← Все вопросы
Год високосный или нет — как проверить в коде?
6
Делаю программку с календарём. Как правильно проверить, високосный ли год? Помню что-то про деление на 4, но там вроде есть исключения с сотнями.
2 ответа
12
✓ Принятый ответ — помог автору
Правило такое: год високосный, если делится на 4, но годы, кратные 100, високосные только если делятся ещё и на 400.
То есть 2000 — високосный, а 1900 — нет.
year = 2024
if year % 4 == 0 and (year % 100 != 0 or year % 400 == 0):
print('високосный')
else:
print('обычный')
Здесь снова главный инструмент — остаток %: «делится без остатка» значит % ... == 0.
4
Если не хочется помнить правило, в стандартной библиотеке есть готовая функция:
import calendar
print(calendar.isleap(2024)) # True
Но на контрольной/ЕГЭ лучше уметь писать условие руками — его как раз любят спрашивать.
Ваш ответ
Войдите, чтобы ответить на вопрос.