Посчитать день недели

Определить день недели по дате можно двумя способами: воспользоваться онлайн-калькулятором для мгновенного результата или освоить простую формулу для самостоятельного расчёта. Оба метода пригодятся – калькулятор для скорости, формула – чтобы блеснуть знаниями или проверить результат.

Калькулятор дня недели

Дата Результат рассчитывается автоматически при изменении даты

Введите дату – и калькулятор мгновенно покажет день недели. Инструмент работает для любых дат, включая прошлые и будущие годы.

Формула Зеллера – классический метод

Формула Зеллера позволяет вычислить день недели для любой даты григорианского календаря. Это метод, который используют в программировании и календарных системах.

Алгоритм расчёта

  1. Определите месяц и год: если месяц январь или февраль, считайте их как 13-й и 14-й месяцы предыдущего года.

  2. Разделите год: вычислите K – год текущего столетия (последние две цифры), и J – век (все цифры до столетия).

  3. Подставьте в формулу:


h = (q + ⌊13(m+1)/5⌋ + K + ⌊K/4⌋ + ⌊J/4⌋ − 2J) mod 7

Где:

  • q – день месяца
  • m – номер месяца (3=март, 4=апрель, …, 14=февраль)
  • K – год века (две последние цифры года)
  • J – век (год без двух последних цифр)
  • ⌊ ⌋ – целая часть числа
  1. Расшифруйте результат: полученное число h означает:
  • 0 – суббота
  • 1 – воскресенье
  • 2 – понедельник
  • 3 – вторник
  • 4 – среда
  • 5 – четверг
  • 6 – пятница

Пример: 1 января 2000 года

  • Дата: 1 января 2000 года
  • Так как январь – месяц 13 предыдущего года: q = 1, m = 13, K = 99, J = 19

Подставляем:


h = (1 + ⌊13(13+1)/5⌋ + 99 + ⌊99/4⌋ + ⌊19/4⌋ − 2·19) mod 7
h = (1 + ⌊182/5⌋ + 99 + 24 + 4 − 38) mod 7
h = (1 + 36 + 99 + 24 + 4 − 38) mod 7
h = 126 mod 7 = 0

Результат: 0 = суббота. Проверяем – 1 января 2000 года действительно суббота.

Упрощённый метод: код месяца

Для упрощённого расчёта в уме используйте «код месяца» – постоянное число, которое прибавляется к дню месяца.

Коды месяцев для 2026 года

МесяцКод
Январь0
Февраль3
Март3
Апрель6
Май1
Июнь4
Июль6
Август2
Сентябрь5
Октябрь0
Ноябрь3
Декабрь5

Как считать

  1. Прибавьте к номеру дня месяца код этого месяца.
  2. Добавьте две последние цифры года.
  3. Разделите полученное число на 7 и возьмите остаток.
  4. Найдите день недели по остатку: 0 – суббота, 1 – воскресенье, 2 – понедельник и так далее до 6 – пятница.

Пример: 15 июля 2026 года

  • День: 15
  • Код июля: 6
  • Год (две цифры): 26

Сумма: 15 + 6 + 26 = 47 47 mod 7 = 5 (остаток) 5 = четверг. 15 июля 2026 года – четверг.

Этот метод работает для XXI века. Для других столетий добавляется поправка на век.

Частые случаи

Какой день недели был 1 января 2000 года?

Суббота. Это одна из самых известных дат – «проблема 2000 года» и начало нового тысячелетия. Многие календарные программы именно поэтому используют эту дату для тестирования.

День недели текущей даты

Чтобы узнать день недели для сегодняшней даты, проще всего использовать калькулятор выше. Для самопроверки: текущая дата {{QUOTE:current_date}} – {{QUOTE:current_weekday}}.

День недели для дат прошлого века

Формула Зеллера работает для любого года григорианского календаря (с 1582 года). Для дат до реформы календаря результат может отличаться из-за юлианского календаря, который использовался ранее.

Часто задаваемые вопросы

Как посчитать день недели без калькулятора?
Используйте формулу Зеллера: h = (q + ⌊13(m+1)/5⌋ + K + ⌊K/4⌋ + ⌊J/4⌋ − 2J) mod 7, где q – день месяца, m – месяц (3=март,…,14=февраль), K – год века, J – нулевой век.
Какой день недели был 1 января 2000 года?
1 января 2000 года – суббота. Это одна из самых известных дат, которую часто используют для проверки календарных алгоритмов.
Как определить день недели для любой даты в уме?
Запомните «код дня недели» для каждого месяца (2026 год: янв=0, фев=3, март=3, апр=6, май=1, июн=4, июл=6, авг=2, сен=5, окт=0, ноя=3, дек=5) и прибавьте к номеру дня месяца, затем найдите остаток от деления на 7.
Почему 2000 год считается особенным для определения дней недели?
2000 год – високосный год, начинающийся в субботу. Это первый год XXI века, и из-за високосного цикла он имеет «особый» календарный паттерн, который повторяется каждые 28 лет.
  1. Календарь дат онлайн: калькулятор для расчёта интервалов
  2. Рассчитать дату онлайн: разница дней, срок и день недели (2026)