Показать сообщение отдельно
Старый 14.08.2019, 23:28   #6
SergVK
Member
 
Регистрация: Oct 2018
Сообщения: 78
Благодарил(а): 7 раз(а)
Поблагодарили: 9 раз(а) в 5 сообщениях
По умолчанию Ответ: Почему GetDays "спешит" на 15 дней?

Цитата:
Сообщение от Arsie Посмотреть сообщение
GetDays()
quot = (_year - 1) / 4;
rem = (_year - 1) - quot * 4;
days = ((unsigned long)quot * (4 * 365 + 1)) + ((unsigned long)rem * 365);
Судя по этому куску, функция считает каждый четвертый год високосным. Однако каждый сотый не вискосный, но каждый 400 высокосный. вот и разница в 15 дней за 2000 набегает.

PS: По юлианскому календарю.... похоже в этом и трабл
SergVK вне форума   Ответить с цитированием