Предмет: Информатика, автор: klorman

Помогите решить задачу по информатике:
Требуется определить, является ли данный год високосным. (Напомним, что год является високосным, если его номер кратен 4, но не кратен 100, а также если он кратен 400.)
Вот я тут попробовал решить в паскале:
var
a:integer;
begin
read(a);
if (((a mod 400)=0) and ((a mod 100)<>0)) or ((a mod 4)=0) then
write('YES')
else
write('NO');
end.
но если я ввожу число, кратное 100 но не кратное 400, то выводит YES, а нужно NO.
ПОМОГИТЕ РЕШИТЬ ПОЖАЛУЙСТА!!!
можно решить в pascal или в pascal ABC или в Python.

Ответы

Автор ответа: diks2004
0
замените условие на следующее:
if ((a mod 4=0)or ((a mod 100<>0) and (a mod 400=0))) then ...


Автор ответа: diks2004
0
все остальное в вашей программе без изменений
Автор ответа: klorman
0
всёравно пишет yes если писать 100
Автор ответа: diks2004
0
100 - это высокосный год
Автор ответа: klorman
0
нет
Автор ответа: klorman
0
уже отменили
Интересные вопросы
Предмет: Қазақ тiлi, автор: galinka150989