@class_Human

Как прийти к такому решению?

Задача: найти количество високосных лет между двумя датами, не используя циклы.

Я методом "тыка" решил по такой формуле. По крайней мере выходные значения совпали:

years = ((last_year / 4) % 100 + (last_year / 400)) - ((start_year / 4) % 100 + (start_year / 400));

Потом ещё подглядел вот такое решение, видимо оно правильнее:

((last_year / 4) - (last_year / 100) + (last_year / 400)) - ((start_year / 4) - (start_year / 100) + (start_year / 400));

Вот не могу понять как прийти к такому решению логически, где взаимосвязь? Зачем сначала делить на 4 потом делить на 100 потом на 400 прибавлять вычитать?
Если не лень, объясните пожалуйста.
  • Вопрос задан
  • 412 просмотров
Пригласить эксперта
Ответы на вопрос 1
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы