Описание тега leap-year

Високосный год - это год, содержащий один дополнительный день, который приходится на 29 февраля по григорианскому календарю.

Високосный год (или вставочный или бисекстильный год) - это год, содержащий один дополнительный день для того, чтобы календарный год синхронизировался с астрономическим или сезонным годом.

Поскольку сезоны и астрономические события не повторяются в течение целого числа дней, календари, которые имеют одинаковое количество дней в каждом году, с течением времени смещаются по отношению к событию, которое год должен отслеживать. Вставив (или вставив) дополнительный день или месяц в год, можно исправить дрейф. Год, не являющийся високосным, называется обычным годом.

Больше о високосных годах в целом можно найти в Википедии здесь.

В вычислениях мы обычно имеем в виду григорианский календарь, который добавляет в високосный год дополнительный день 29 февраля. Високосный год - это год, который удовлетворяет обоим следующим критериям:

  • Он делится на 4 без остатка.
  • Оно не делится на 100 без остатка, если оно не делится на 400 без остатка.

Типичная реализация этого алгоритма:

bool isLeapYear = year % 4 == 0 && (year % 100 != 0 || year % 400 == 0);

Ошибки високосного года

Високосные годы могут создавать ошибки в программном обеспечении. Это описано в следующем посте:

Какие есть примеры ошибок високосного года?