День недели
Узнать день недели по дате от 1 до 9999 года. Решение по формуле Целлера, номер дня в году, номер недели и календарь месяца.
Калькулятор дня недели определяет, на какой день недели приходится любая дата от 1 до 9999 года — например, день рождения, историческое событие или праздник в будущем. Решение показано по формуле Целлера, а также указаны номер дня в году, номер недели, квартал и календарь месяца.
Формула Целлера
h = (q + [13(m + 1)/5] + K + [K/4] + [J/4] + 5J) mod 7
- q — число месяца, m — номер месяца (март = 3, …, декабрь = 12, а январь и февраль считаются 13-м и 14-м месяцами предыдущего года);
- K — последние две цифры года, J — номер столетия (первые цифры года);
- [x] — целая часть числа, mod 7 — остаток от деления на 7.
| h | 0 | 1 | 2 | 3 | 4 | 5 | 6 |
|---|---|---|---|---|---|---|---|
| День | сб | вс | пн | вт | ср | чт | пт |
Пример. 12 апреля 1961 года (полёт Гагарина): q = 12, m = 4, K = 61, J = 19.
h = (12 + [13·5/5] + 61 + [61/4] + [19/4] + 5·19) mod 7 = (12 + 13 + 61 + 15 + 4 + 95) mod 7 = 200 mod 7 = 4 — среда.
Формула работает для григорианского календаря. В России он введён в 1918 году, поэтому для более ранних дат по старому стилю нужно сначала перевести дату в новый стиль.
Комментарии
Комментариев пока нет.