Алгоритм вычисления дня недели
Материал из Википедии — свободной энциклопедии
Существует довольно простой алгоритм вычисления дня недели для любой даты григорианского календаря позднее 1583 года. Григорианский календарь начал действовать в 1582 — после 4 октября сразу настало 15 октября.
Положим год — год, месяц — номер месяца, день — день, тогда
a = (14 − месяц) / 12 y = год − a m = месяц + 12 * a − 2 ДеньНедели = (7000 + (день + y + y / 4 − y / 100 + y / 400 + (31 * m) / 12)) ОСТАТОК 7
Все деления целочисленные (остаток отбрасывается).
Результат: 0 — воскресенье, 1 — понедельник и т. д.