Задача - Определить високосный год или нет - программирование на разных языках

Задача — Определить високосный год или нет — программирование на разных языках

Задачи по программированию с решением для школьников
Want create site? Find Free WordPress Themes and plugins.

Задача — Определить високосный год или нет
— программирование на Pascal, Си, Кумир, Basic-256, Python

Определить, является ли год, который ввел пользователем, високосным или невисокосным.

Високосные года делятся нацело на 4. Однако из этого правила есть исключение: столетия, которые не делятся нацело на 400, високосными не являются.

В високосном годе 366 дней, в обычном 365.

  1. Если год не делится на 4, значит он обычный.
  2. Иначе надо проверить не делится ли год на 100.
  3. Если не делится, значит это не столетие и можно сделать вывод, что год високосный.
  4. Если делится на 100, значит это столетие и его следует проверить его делимость на 400.
  5. Если год делится на 400, то он високосный.
  6. Иначе год обычный.

Проверки можно проводить последовательно, а можно группировать через логические операторы «И» и «ИЛИ». Поэтому способов решения задачи может быть несколько.

Pascal

// 1-й вариант:

var y: word;
begin
readln(y);
if y mod 4 <> 0 then writeln(‘Обычный’)
else
if y mod 100 = 0 then
if y mod 400 = 0 then writeln(‘Високосный’)
else writeln(‘Обычный’)
else writeln(‘Високосный’);
end.

// 2-й вариант:

var y: word;
begin
readln(y);
if (y mod 4 <> 0) or (y mod 100 = 0) and (y mod 400 <> 0) then
writeln(‘Обычный’)
else
writeln(‘Високосный’);
end.

1980
Високосный

1978
Обычный

Язык Си

// 1-й вариант:

#include <stdio.h>

main() {
int y;
scanf(«%d»,&y);
if (y%4 != 0) printf(«Обычный»);
else
if (y%100 == 0 && y%400 != 0) printf(«Обычный»);
else printf(«Високосный»);
printf(«n»);
}

// 2-й вариант:

#include <stdio.h>

main() {
int y;
scanf(«%d»,&y);
if (y%4 != 0 || y%100 == 0 && y%400 != 0) printf(«Обычный»);
else printf(«Високосный»);
printf(«n»);
}

Python

# 1-й вариант:

y = int(input())
if y % 4 != 0:
print(«Обычный»)
elif y % 100 == 0:
if y % 400 == 0:
print(«Високосный»)
else:
print(«Обычный»)
else:
print(«Високосный»)

# 2-й вариант:

if y % 4 != 0 or (y % 100 == 0 and y % 400 != 0):
print(«Обычный»)
else:
print(«Високосный»)

КуМир

| 1-й вариант:

алг високосный год
нач
цел n
ввод n
если mod(n,4) <> 0 то
вывод «Обычный год»
иначе
если mod(n,100) = 0 то
если mod(n,400) = 0 то
вывод «Високосный год»
иначе
вывод «Обычный год»
все
иначе
вывод «Високосный год»
все
все
кон

| 2-й вариант:

алг високосный год
нач
цел n
ввод n
если mod(n,4) <> 0 или mod(n,100) = 0 и mod(n,400) <> 0 то
вывод «Обычный год»
иначе
вывод «Високосный год»
все
кон 1100
Обычный год

1992
Високосный год

Basic-256

input y
if y%4 = 0 then
if y%100=0 and y%400 <> 0 then
print «365»
else
print «366»
endif
else
print «365»
endif

Did you find apk for android? You can find new Free Android Games and apps.

Добавить комментарий