алгоритм судного дня что такое

Алгоритм Судного дня

Алгоритм (метод) Судного дня (англ. Doomsday algorithm ) — простой алгоритм для определения дня недели данной даты. Он был разработан около 1970 года британским математиком Джоном Конвеем.

Алгоритм для устного счёта действителен для григорианского календаря, но есть модификации для юлианского. Он ориентируется на так называемый «Судный день» (англ. Doomsday ). Так в данном контексте назван последний день февраля, то есть 28 или (в високосном году) 29 февраля.

Если известен день недели «судного дня» в данном году, можно использовать последний день февраля как основу для расчёта дня недели всех остальных дат этого года. Рекомендуется запомнить день недели «судного дня» актуального года (в 2012 году это среда). В каждом году он смещается на один день, в високосных годах на два.

«Шпаргалка»

Литература

Ссылки

Полезное

Смотреть что такое «Алгоритм Судного дня» в других словарях:

Список алгоритмов — Эта страница информационный список. Основная статья: Алгоритм Ниже приводится список алгоритмов, группированный по категориям. Более детальные сведения приводятся в списке структур данных и … Википедия

Конвей, Джон Хортон — Джон Хортон Конвей англ. John Horton Conway … Википедия

BGM-71 TOW — «Тоу» BGM 71 TOW Ракета TOW, запущенная с джипа F … Википедия

Шамир, Исраэль — Проверить нейтральность. На странице обсуждения должны быть подробности … Википедия

Искусственная жизнь — Эта статья или раздел нуждается в переработке. Пожалуйста, улучшите статью в соответствии с правилами написания статей. Искусственн … Википедия

Исраэль Шамир — (Израиль Соломонович Шмерлер; p. 1947, Новосибирск; известный в Швеции как Ёран Ермас) российско израильский писатель, переводчик и публицист антисионистской направленности. Был признан антисемитом Французским судом.[1] Исраэль Шамир Изя (Израиль … Википедия

Шамир Исраэль — Исраэль Шамир (Израиль Соломонович Шмерлер; p. 1947, Новосибирск; известный в Швеции как Ёран Ермас) российско израильский писатель, переводчик и публицист антисионистской направленности. Был признан антисемитом Французским судом.[1] Исраэль… … Википедия

Хованский, Иван Андреевич Тараруй — Не следует путать с Иваном Андреевичем Большим Хованским военным деятелем начала XVII века. В Википедии есть статьи о других людях с такой фамилией, см. Хованский. князь Иван Андреевич Хованский … Википедия

Источник

алгоритм судного дня что такое. Смотреть фото алгоритм судного дня что такое. Смотреть картинку алгоритм судного дня что такое. Картинка про алгоритм судного дня что такое. Фото алгоритм судного дня что такое

Алгоритм достаточно прост, чтобы его можно было вычислить мысленно. Обычно Конвей мог дать правильный ответ менее чем за две секунды. Чтобы улучшить свою скорость, он практиковал свои календарные вычисления на своем компьютере, который был запрограммирован так, чтобы опрашивать его со случайными датами каждый раз, когда он входил в систему.

СОДЕРЖАНИЕ

Якорные дни для некоторых современных лет

Якорным днем ​​Судного дня для текущего года по григорианскому календарю (2021 г.) является воскресенье. Для некоторых других современных лет:

Якорные дни по григорианскому календарю

Пн.Вт.Мы б.Чт.Пт.Суббота.Солнце.
1898 г.1899 г.1900 г.1901 г.1902 г.1903 г.
1904 г.1905 г.1906 г.1907 г.1908 г.1909 г.
1910 г.1911 г.1912 г.1913 г.1914 г.1915 г.
1916 г.1917 г.1918 г.1919 г.1920 г.
1921 г.1922 г.1923 г.1924 г.1925 г.1926 г.
1927 г.1928 г.1929 г.1930 г.1931 г.
1932 г.1933 г.1934 г.1935 г.1936 г.1937 г.
1938 г.1939 г.1940 г.1941 г.1942 г.1943 г.
1944 г.1945 г.1946 г.1947 г.1948 г.
1949 г.19501951 г.1952 г.1953 г.1954 г.
1955 г.1956 г.1957 г.1958 г.1959 г.
1960 г.1961 г.1962 г.1963 г.1964 г.1965 г.
1966 г.19671968 г.1969 г.1970 г.1971 г.
1972 г.19731974 г.1975 г.1976 г.
1977 г.1978 г.1979 г.1980 г.1981 г.1982 г.
1983 г.1984 г.1985 г.1986 г.1987 г.
1988 г.1989 г.1990 г.1991 г.1992 г.1993 г.
1994 г.1995 г.1996 г.1997 г.1998 г.1999 г.
2000 г.2001 г.2002 г.2003 г.2004 г.
2005 г.2006 г.2007 г.2008 г.2009 г.2010 г.
2011 г.2012 г.20132014 г.2015 г.
2016 г.2017 г.2018 г.2019 г.2020 г.2021 г.
2022 г.2023 г.2024 г.2025 г.2026 г.2027 г.
2028 г.2029 г.2030 г.2031 г.2032 г.
2033 г.2034 г.2035 г.2036 г.2037 г.2038
2039 г.2040 г.2041 г.2042 г.2043 г.
20442045 г.2046204720482049 г.
2050 г.2051205220532054 г.2055
20562057205820592060
206120622063206420652066 г.
20672068206920702071
207220732074207520762077
207820792080 г.208120822083
20842085208620872088
208920902091209220932094
209520962097209820992100

Памятные даты, которые всегда приходятся на Судный день

Можно найти день недели данной календарной даты, используя ближайший конец света в качестве ориентира. Чтобы помочь с этим, ниже приводится список легко запоминающихся дат каждого месяца, который всегда приходится на конец света.

Судный день также приходится на несколько общих праздников. В приведенной ниже таблице включены только даты, указанные в мнемониках перечисленных источников.

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

Январь и февраль можно рассматривать как последние два месяца предыдущего года.

Пример

Мнемонические названия дней недели

Поскольку этот алгоритм включает обработку дней недели как чисел по модулю 7, Джон Конвей предложил рассматривать дни недели как «Noneday»; или как «Сандай» (для воскресенья), «Один день», «Два дня», «Тройной день», «Четвертый день», «Пятидневный день» и «Шесть в день», чтобы вспомнить соотношение числа и дня недели без необходимости сосчитайте их в голове.

день неделиПорядковый
номер
Мнемонический
Воскресенье0Noneday или
Sansday
понедельник1Один день
вторник2Два дня
среда3Treblesday
четверг4Четвертый день
Пятница5Пятидневка
Суббота6Шесть в день

В поисках якорного дня года

Сначала возьмем день якоря для века. Согласно правилу судного дня, век начинается с 00 и заканчивается 99 годом. В следующей таблице показаны дни якоря веков 1800–1899, 1900–1999, 2000–2099 и 2100–2199.

Для григорианского календаря:

Математическая формула 5 × ( c mod 4) mod 7 + вторник = якорь. Алгоритмический Пусть r = c mod 4 если r = 0, то якорь = вторник если r = 1, то якорь = воскресенье если r = 2, то якорь = пятница если r = 3, то якорь = среда

Для юлианского календаря:

6 c mod 7 + воскресенье = якорь.

Затем найдите день привязки года. Для этого, по словам Конвея:

Например, для 1966 года двадцатого века:

Как описано в пункте 4 выше, это эквивалентно:

Итак, конец света 1966 года пришелся на понедельник.

Точно так же конец света в 2005 году приходится на понедельник:

Почему это работает

алгоритм судного дня что такое. Смотреть фото алгоритм судного дня что такое. Смотреть картинку алгоритм судного дня что такое. Картинка про алгоритм судного дня что такое. Фото алгоритм судного дня что такое

Расчет дня привязки Судного дня фактически вычисляет количество дней между любой заданной датой в базовом году и той же датой в текущем году, а затем берет остаток по модулю 7. Когда обе даты наступают после високосного дня (если есть), разница лишь 365 г + у / 4 (округлено в меньшую сторону). Но 365 равно 52 × 7 + 1, поэтому после вычисления остатка мы получаем просто

Это дает более простую формулу, если удобно делить большие значения y на 4 и 7. Например, мы можем вычислить

что дает тот же ответ, что и в приведенном выше примере.

Метод «нечетное + 11»

алгоритм судного дня что такое. Смотреть фото алгоритм судного дня что такое. Смотреть картинку алгоритм судного дня что такое. Картинка про алгоритм судного дня что такое. Фото алгоритм судного дня что такое

Более простой метод определения дня привязки года был открыт в 2010 году Чемберленом Фонгом и Майклом К. Уолтерсом и описан в их статье, представленной на 7-м Международном конгрессе по промышленной и прикладной математике (2011). Метод, называемый «нечетным + 11», эквивалентен вычислению

Он хорошо подходит для мысленных вычислений, поскольку не требует деления на 4 (или 12), и процедуру легко запомнить, поскольку в ней многократно используется правило «нечетное + 11».

Расширяя это, чтобы получить день привязки, процедура часто описывается как накопление промежуточной суммы T за шесть шагов, как показано ниже:

Например, применив этот метод к 2005 году, шаги, как описано, будут следующими:

Явная формула для метода нечетных + 11:

Хотя это выражение выглядит пугающим и сложным, на самом деле оно простое из-за общего подвыражения у + 11 ( у мод 2) / 2 это нужно рассчитать только один раз.

Переписка с доминантским письмом

Судный день связан с доминирующей буквой года следующим образом.

Конец светаДоминическое письмо
Общий годВисокосный год
ВоскресеньеCОКРУГ КОЛУМБИЯ
понедельникBCB
вторникАBA
средагAG
четвергFGF
ПятницаEFE
СубботаDED

Найдите в приведенной ниже таблице доминирующую букву (DL).

Сотни летD
L
Цифры оставшегося года#
Юлиан
(r ÷ 7)
Григорианский
(r ÷ 4)
r5 1916 20 r0А00 06 17 2328 34 45 5156 62 73 7984 900
r4 1815 19 r3г01 07 12 1829 35 40 4657 63 68 7485 91 961
r3 17N / AF02 13 19 2430 41 47 5258 69 75 8086 972
r2 1618 22 r2E03 08 14 2531 36 42 5359 64 70 8187 92 983
r1 15N / AD09 15 20 2637 43 48 5465 71 76 8293 994
r0 1417 21 r1C04 10 21 2732 38 49 5560 66 77 8388 945
r6 13N / AB05 11 16 2233 39 44 5061 67 72 7889 956

Обзор всех Судных дней

МесяцДатыНомера недель *
Январь (обычные годы)3, 10, 17, 24, 311–5
Январь (високосные годы)4, 11, 18, 251–4
Февраль (обычные годы)7, 14, 21, 286–9
Февраль (високосные годы)1, 8, 15, 22, 295–9
Март7, 14, 21, 2810–13
апреля4, 11, 18, 2514–17
Май2, 9, 16, 23, 3018–22
июнь6, 13, 20, 2723–26
июль4, 11, 18, 2527–30
август1, 8, 15, 22, 2931–35
сентябрь5, 12, 19, 2636–39
Октябрь3, 10, 17, 24, 3140–44
Ноябрь7, 14, 21, 2845–48
Декабрь5, 12, 19, 2649–52

Компьютерная формула якорного дня в году

Для использования компьютера удобны следующие формулы для дня привязки в году.

Для григорианского календаря:

Для юлианского календаря:

якорь день знак равно Воскресенье + у + ⌊ у 4 ⌋ знак равно Воскресенье + 5 × ( у мод 4 ) + 3 × ( у мод 7 ) <\ displaystyle <\ mbox > = <\ mbox <воскресенье>> + y + \ left \ lfloor <\ frac <4>> \ right \ rfloor = <\ mbox > + 5 \ раз (у <\ bmod <4>>) + 3 \ раз (у <\ bmod <7>>)> алгоритм судного дня что такое. Смотреть фото алгоритм судного дня что такое. Смотреть картинку алгоритм судного дня что такое. Картинка про алгоритм судного дня что такое. Фото алгоритм судного дня что такое

400-летний цикл якорных дней

Юлианские века-1600J
-900J
-200J
500J
1200J
1900J
2600J
3300J
-1500J
-800J
-100J
600J
1300J
2000J
2700J
3400J
-1400J
-700J
0J
700J
1400J
2100J
2800J
3500J
-1300J
-600J
100J
800J
1500J
2200J
2900J
3600J
-1200J
-500J
200J
900J
1600J
2300J
3000J
3700J
-1100J
-400J
300J
1000J
1700J
2400J
3100J
3800J
-1000
Дж
-300
Дж
400
Дж
1100
Дж 1800 Дж 2500 Дж 3200 Дж 3900 Дж
-1600
-1200
-800
-400
0
400
800
1200
1600
2000
2400
2800
3200
3600
-1500
-1100
-700
-300
100
500
900
1 300
1700
2100
2500
2900
3300
3700
-1400
-1000
-600
-200
200
600
1000
1400
1800
2200
2600
3000
3400
3800
-1300
-900
-500
-100
300
700
1100
1500
1900
2300
2700
3100
3500
3900
0028 год5684Вт.Пн.Солнце.Суббота.Пт.Чт.Мы б.
012957 год85Мы б.Вт.Пн.Солнце.Суббота.Пт.Чт.
02305886Чт.Мы б.Вт.Пн.Солнце.Суббота.Пт.
0331 год5987Пт.Чт.Мы б.Вт.Пн.Солнце.Суббота.
04326088Солнце.Суббота.Пт.Чт.Мы б.Вт.Пн.
05336189Пн.Солнце.Суббота.Пт.Чт.Мы б.Вт.
06346290Вт.Пн.Солнце.Суббота.Пт.Чт.Мы б.
0735 год6391Мы б.Вт.Пн.Солнце.Суббота.Пт.Чт.
08366492Пт.Чт.Мы б.Вт.Пн.Солнце.Суббота.
09376593Суббота.Пт.Чт.Мы б.Вт.Пн.Солнце.
10386694Солнце.Суббота.Пт.Чт.Мы б.Вт.Пн.
11396795Пн.Солнце.Суббота.Пт.Чт.Мы б.Вт.
12406896Мы б.Вт.Пн.Солнце.Суббота.Пт.Чт.
1341 год6997Чт.Мы б.Вт.Пн.Солнце.Суббота.Пт.
14427098Пт.Чт.Мы б.Вт.Пн.Солнце.Суббота.
1543 год7199Суббота.Пт.Чт.Мы б.Вт.Пн.Солнце.
1644 год72Пн.Солнце.Суббота.Пт.Чт.Мы б.Вт.
174573Вт.Пн.Солнце.Суббота.Пт.Чт.Мы б.
184674Мы б.Вт.Пн.Солнце.Суббота.Пт.Чт.
194775Чт.Мы б.Вт.Пн.Солнце.Суббота.Пт.
204876Суббота.Пт.Чт.Мы б.Вт.Пн.Солнце.
21 год4977Солнце.Суббота.Пт.Чт.Мы б.Вт.Пн.
225078Пн.Солнце.Суббота.Пт.Чт.Мы б.Вт.
235179Вт.Пн.Солнце.Суббота.Пт.Чт.Мы б.
245280Чт.Мы б.Вт.Пн.Солнце.Суббота.Пт.
255381 годПт.Чт.Мы б.Вт.Пн.Солнце.Суббота.
265482Суббота.Пт.Чт.Мы б.Вт.Пн.Солнце.
275583Солнце.Суббота.Пт.Чт.Мы б.Вт.Пн.

Поскольку в григорианском календаре 146097 дней, или ровно 20871 семидневная неделя, в 400 лет день якоря повторяется каждые четыре столетия. Например, день привязки 1700–1799 совпадает с днем ​​привязки 2100–2199, то есть в воскресенье.

Частота появления Судного дня по григорианскому календарю в 400-летнем цикле по будням и годам

ВоскресеньепонедельниквторниксредачетвергПятницаСубботаВсего
Невисокосные годы43 год43 год43 год43 год44 год43 год44 год303
Високосные годы1315131513141497
Всего5658565857 год57 год58400

Частота появления определенной даты в конкретный будний день может быть легко выведена из вышеизложенного (для даты с 1 января по 28 февраля соотнесите ее с концом света предыдущего года).

28-летний цикл

Что касается частоты Судных дней в 28-летнем цикле по юлианскому календарю, то для каждого дня недели есть 1 високосный год и 3 обычных года, последние через 6, 17 и 23 года после первого (то есть с интервалами в 6, 11, 6 и 5 лет). лет; распределяется неравномерно, потому что через 12 лет день пропускается в последовательности Судных дней). Тот же цикл применяется к любой дате, начиная с 1 марта, приходящегося на определенный будний день.

Таким образом, для любой даты, кроме 29 февраля, интервалы между обычными годами, приходящимися на конкретный будний день, равны 6, 11, 11. См., Например, внизу страницы Общий год, начинающийся в понедельник, годы в диапазоне 1906–2091.

29 февраля, приходящееся на определенный будний день, бывает только один раз в 28 лет, и это, конечно, високосный год.

Юлианский календарь

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

Полные примеры

Пример 1 (1985)

Пример 2 (другие века)

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *