Страница 2 из 2
Re: задачка_в_С++
Добавлено: 19 дек 2007, 12:26
WinMain
Да, действительно при смене столетий, если год не кратен 400, то год не является високосным. В Википедии хорошая статья есть на эту тему, даже с исходником функции на Си. :-)
http://ru.wikipedia.org/wiki/Григорианский_календарь
Re: задачка_в_С++
Добавлено: 22 окт 2009, 13:28
BBB
Вот здесь (в самом конце) нашел про "проблему 4000". Правда, сказано, что "Это правило официально не принято":
Астрономом Вильямом Гершелем (1738-1822) была предложена лучшая аппроксимация продолжительности тропического года, равная 365969/4000 = 365.24225 дней. Это предписывает 969 високосных годов на каждые 4000 лет, что может быть достигнуто пропуском одного високосного года Григорианского календаря каждые 4000 лет. Например, годы делимые нацело на 4000. Это правило официально не принято.
Но, действительно, "проблему 4000" решать придется нашим потомкам

Re: задачка_в_С++
Добавлено: 22 окт 2009, 13:34
atavin-ta
Год висакосный, если он:
1. делится на 4, но не делится на 100, или
2. делится на 1000;
Re: задачка_в_С++
Добавлено: 22 окт 2009, 16:48
Хыиуду
atavin-ta писал(а):Год висакосный, если он:
1. делится на 4, но не делится на 100, или
2. делится на 1000;
Не на 1000, а на 400
Re: задачка_в_С++
Добавлено: 23 окт 2009, 05:05
atavin-ta
Именно на 1000. А следующее правилео гласит, что год снова не високосный, если делится на 4000. Возможно ты с ним и перепутал, но оно не утверждено.
Re: задачка_в_С++
Добавлено: 23 окт 2009, 12:59
Хыиуду
По твоему определению 1600 год был не високосным. Равно как и 1200.
Re: задачка_в_С++
Добавлено: 23 окт 2009, 13:05
atavin-ta
А что, они високосные?
Re: задачка_в_С++
Добавлено: 26 окт 2009, 10:50
Хыиуду
А что, нет?
