Приветствую All!
Начал читать, думаю многим известную книгу " Б.В.Кернигана и Д.М. Ричи "Язык С" и отковырял в ней вот такую формулу:
-------------cut-----------------
.....год является високос-
ным, если он делится на 4, но не делится на 100, исключая то, что делящиеся на 400 годы тоже являются високосными. ПоэтомуIF(YEAR % 4 == 0 && YEAR % 100 != 0 || YEAR % 400 == 0)
год високосный
ELSE
год невисокосный
.......
------------end cut----------------Я может чего-то в этой жизни не понимаю, но помоему для определения високосного года достаточно одного условия - кратности четырем ...или я неправ?
ссылки на оригинальный текст:
http://ergosystems.narod.ru/kerrichc.html
http://lit.sup.rinet.ru/cpp/kernigan/2.html
http://freedoc.vov.ru/doc/progr/cpp/6/c_2.htm
>Я может чего-то в этой жизни
>не понимаю, но помоему для
>определения високосного года достаточно одного
>условия - кратности четырем ...или
>я неправ?Всё верно в формуле. Дело в том, что (если не ошибаюсь) в 17 году был принят новый календарь (Григорианский). По подсчётам вышло, что Високосные года не достаточно точно компенсируют излишнее время, накапливаемое за каждый год. В результате за 400 лет накапливается 3-е суток, поэтому каждый 400-й год високосный, а все прочие (каждый сотый) - нет. Пардон, если чё напутал в истории, но формула - верна.
>Я может чего-то в этой жизни
>не понимаю,Разницы между Юлианским и Григорианским календарями