какой день недели был



Дни недели по годам

Автор Ната задал вопрос в разделе Литература

Подскажите как узнать по дате день недели (формула вечного календаря) и получил лучший ответ

Ответ от Бес[активный]
Для нашего современного календаря:
W = d + [ (13m - 1) / 5 ] + y + [ y / 4 ] + [ c / 4 ] - 2c
где d - число месяца;
m - номер месяца, начиная с марта (март=1, апрель=2, ..февраль=12);
y - номер года в столетии (например, для 1965 года y=65. Для января и февраля 1965 года, т. е. для m=11 или m=12 номер года надо брать предыдущий, т. е. y=64);
c - количество столетий (например, для 2000 года c=20. И здесь для января и февраля 2000 года надо брать предыдущее столетие с=19);
квадратные скобки означают целую часть полученного числа (отбрасываем дробную) .
Результат W делите на 7 и модуль остатка от деления даст день недели (воскресенье=0, понедельник=1, ..суббота=6)
Пример: для 31 декабря 2008 года определяем:
d=31, m=10, y=8, c=20
По формуле находим:
W = 31 + [ ( 13 * 10 - 1 ) / 5 ] + 8 + [ 8 / 4 ] + [ 20 / 4 ] - 2 * 20 =
= 31 + 25 + 8 + 2 + 5 - 40 = 31
Теперь делим W на 7 и находим остаток от деления: 31 / 7 = 4 и 3 в остатке.
Тройка соответствует дню недели СРЕДА.
(с) Энциклопедия для детей, том 11, Математика, с. 159
--
Практическую реализацию этой формулы можете скачать здесь -

Ответ от Мария[гуру]
посто не пить!!

Ответ от Ирина пчелва[активный]
ошибка в остатке

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: Подскажите как узнать по дате день недели (формула вечного календаря)
Вечный календарь на Википедии
Посмотрите статью на википедии про Вечный календарь
Календарь на Википедии
Посмотрите статью на википедии про Календарь
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*