Как определить день недели по дате, не заглядывая в календарь

0 168

Придётся освоить пару формул.

Как определить день недели по дате, не заглядывая в календарь

Расчёт дня недели по дате в уме — это не жизненно важный навык в век технологий. Однако это умение может послужить неплохим упражнением для тренировки памяти и наверняка понравится тем, кто любит проводить операции с цифрами.

Для определения дня недели по дате нужно использовать формулу:

День недели = (день месяца + код месяца + код года) % 7

Если день месяца всегда известен, то код месяца придётся просто запомнить, а код года — вычислить. % — это оператор остатка при делении.

В результате вы получите цифру, которая будет соответствовать определённому дню недели. Но обо всём по порядку.

1. Запомните код месяца

Каждому месяцу присвоена цифра от 0 до 6. Для обычных годов это значение будет неизменным. А для високосного есть исключения: в январе и феврале от исходной цифры нужно отнять единицу.

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

Чтобы запоминать подобные нелогичные данные, проще всего прибегать к ассоциациям.

К слову, чтобы определить, с каким годом вы имеете дело, нужно разделить его на 4: если в результате получилось число с остатком, год считается обычным, а если без — високосным. Но есть исключения — годы, оканчивающиеся на 00 (начало века), не являются високосными: например, 1700‑й, 1800‑й, 1900‑й, 2100‑й. При этом каждый четвёртый из такого ряда всё же будет високосным: 400‑й, 800‑й, 1200‑й, 1600‑й, 2000‑й и так далее.

2. Вычислите код года

Код года в XXI веке рассчитывается по формуле:

Код года = (6 + последние две цифры года + последние две цифры года / 4) % 7

Оператор «/» означает неполное частное, то есть целую часть результата деления. Вот несколько примеров вычислений:

  • 2023 год: (6 + 23 + 23 / 4) % 7 = (6 + 23 + 5) % 7 = 34 % 7 = 6;
  • 2024 год: (6 + 24 + 24 / 4) % 7 = (6 + 24 + 6) % 7 = 36 % 7 = 1;
  • 2025 год: (6 + 25 + 25 / 4) % 7 = (6 + 25 + 6) % 7 = 37 % 7 = 2;
  • 2026 год: (6 + 26 + 26 / 4) % 7 = (6 + 26 + 6) % 7 = 38 % 7 = 3.
  • Если вы захотите узнать день недели для даты другого века, придётся учитывать ещё значения века (6, 4, 2, 0). Вместо 6 в начале формулы для ближайших столетий будут следующие значения:

  • 16хх — 6;
  • 17хх — 4;
  • 18хх — 2;
  • 19хх — 0;
  • 20хх — 6;
  • 21хх — 4 и так далее.
  • 3. Определите день недели

    Внесите все данные в исходную формулу и проведите вычисления, а затем соотнесите полученную цифру с днём недели.

    0 Суббота
    1 Воскресенье
    2 Понедельник
    3 Вторник
    4 Среда
    5 Четверг
    6 Пятница

    Приведём несколько примеров расчёта.

  • 9 августа 2023 года: (9 + 3 + 6) % 7 = 18 % 7 = 4 — среда.
  • 5 марта 2024 года: (5 + 4 + 1) % 7 = 10 % 7 = 3 — вторник.
  • К слову, 2024 год — високосный, поэтому для определения дня недели даты в январе или феврале нужно уменьшить привычный код месяца на единицу:

  • 29 февраля 2024 года: (29 + 3 + 1) % 7 = 33 % 7 = 5 — четверг.
  • Также не забывайте учитывать столетие, на которое приходится дата, и в вычислении кода года используйте соответствующую цифру.

    Например, вот расчёт дня недели для 5 января 2127 года:

  • (4 + 27 + 27 / 4) % 7 = (4 + 27 + 6) % 7 = 37 % 7 = 2 — код года;
  • (5 + 1 + 2) % 7 = 8 % 7 = 1 — воскресенье.
  • Источник

    Оставьте ответ

    Ваш электронный адрес не будет опубликован.