Правило Судного дня

редактировать
Способ вычисления дня недели заданной даты Джон Конвей, изобретатель алгоритма Судного дня, который умер 15-го судного дня 2020 года

Правило судного дня - это алгоритм определения дня недели для заданной даты. Он предоставляет вечный календарь, поскольку григорианский календарь движется циклами по 400 лет. Алгоритм мысленных вычислений был разработан Джоном Конвеем в 1973 году на основе алгоритма вечного календаря Льюиса Кэрролла. Он использует преимущество того, что каждый год имеет определенный день недели, на который выпадают определенные легко запоминающиеся даты, называемые судными днями; например, последний день февраля: 4/4, 6/6, 8/8, 10/10 и 12/12 - все происходит в один и тот же день недели в любом году. Применение алгоритма Судного дня включает три шага: определение дня привязки для века, вычисление дня привязки для года по сравнению с днем ​​для века и выбор ближайшей даты из тех, которые всегда приходятся на конец света, например, 4/4 и 6/6 и подсчет количества дней (по модулю 7 ) между этой датой и рассматриваемой датой, чтобы наступил день недели. Этот метод применим как к григорианскому календарю, так и к юлианскому календарю, хотя их судные дни обычно являются разными днями недели.

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

Содержание

  • 1 Якорные дни для некоторых современных лет
  • 2 Памятные даты, которые всегда приземляется в Судный день
    • 2.1 Пример
  • 3 Мнемонические названия дней недели
  • 4 Поиск якорного дня года
    • 4.1 Почему это работает
    • 4.2 Метод «odd + 11»
  • 5 Переписка с доминантой letter
  • 6 Обзор всех Судных дней
  • 7 Компьютерная формула для якорного дня в году
  • 8 400-летнего цикла якорных дней
    • 8.1 28-летний цикл
    • 8.2 Юлианский календарь
  • 9 Полные примеры
    • 9.1 Пример 1 (1985)
    • 9.2 Пример 2 (другие столетия)
  • 10 См. Также
  • 11 Ссылки
  • 12 Внешние ссылки

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

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

дни привязки по григорианскому календарю
пн.вт.ср.чт.пт.сб.вс.
189818991900190119021903
190419051906190719081909
191019111912191319141915
19161917191819191920
192119221923192419251926
19271928192919301931
193219331934193519361937
193819391940194119421943
19441945194619471948
194919501951195219531954
19551956195719581959
196019611962196319641965
196619671968196919701971
19721973197419751976
197719781979198019811982
19831984198519861987
198819891990199119921993
199419951996199719981999
20002001200220032004
200520062007200820092010
20112012201320142015
201620172018201920202021
202220232024202520262027
20282029203020312032
203320342035203620372038
20392040204120422043
204420452046204720482049
205020512052205320542055
20562057205820592060
206120622063206420652066
20672068206920702071
207220732074207520762077
207820792080208120822083
20842085208620872088
208920902091209220932094
209520962097209820992100

Таблица заполняется по горизонтали, пропуская один столбец для каждого високосного года. Эта таблица циклически повторяется каждые 28 лет, за исключением григорианского календаря по годам, кратным 100 (например, 1900 год, который не является високосным), который также не кратен 400 (например, 2000 год, который по-прежнему является високосным). Полный цикл составляет 28 лет (1461 неделя) по юлианскому календарю, 400 лет (20 871 неделя) по григорианскому календарю.

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

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

Как упоминалось выше, последний день февраля определяет конец света. Ведь 3 января - конец света в обычные годы, а 4 января - конец света в високосные годы, которые можно запомнить как «3 января в течение 3 лет в 4 года и 4 января в 4 году». Для марта можно вспомнить псевдодату «0 марта », которая относится к дню до 1 марта, то есть в последний день февраля.

В период с апреля по декабрь четные месяцы покрываются двойными датами 4/4, 6/6, 8/8, 10/10 и 12/12, которые приходятся на конец света. Нечетные месяцы можно запомнить с помощью мнемоники «Я работаю с 9 до 5 в 7-11 », т. Е. 9/5, 7/11, а также 5 / 9 и 7 ноября - все это судные дни.

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

МесяцПамятная датаМесяц / ДеньМнемоникаПолный список дней
Январь3 января (обычные годы),. 4 января (високосные)1/3 OR1/43-й 3 года в 4 и 4 в 4 -м3, 10, 17, 24, 31 ИЛИ 4, 11, 18, 25
февраля28 февраля (обычные годы), 29 февраля (високосные)2/28 OR2/29последний день февраля0, 7, 14, 21, 28 ИЛИ 1, 8, 15, 22, 29
март"0 марта "3/0последний день Февраль0, 7, 14, 21, 28
апрель4 апреля4/44/4, 6/6, 8/8, 10/10, 12/124, 11, 18, 25
мая9 мая5/99 -to-5 в 7-112, 9, 16, 23, 30
июнь6 июня6/64/4, 6/6, 8/8, 10/10, 12/126, 13, 20, 27
июль11 июля11 июляс 9 до 5, 7-114, 11, 18, 25
августа8 августа8/84/4, 6/6, 8/8, 10/10, 12/121, 8, 15, 22, 29
сентябрь5 сентября9/5с 9 до 5 7-115, 12, 19, 26
октябрь10 октября10/104/4, 6/6, 8/8, 10 / 10, 12/123, 10, 17, 24, 31
ноябрь7 ноября11/7С 9 до 5 в 7-110, 7, 14, 21, 28
декабря12 декабря12/124/4, 6/6, 8/8, 10/10, 12/125, 12, 19, 26

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

МесяцMСудный день
Янв13/4C/LC / D
Фев20/1
Мар37/0M + 4C день
май59
июл711
сен95M - 4
ноя117
янв139/2день B
апр44Mдень C
июн66
август88
октябрь1010
декабрь1212
Feb1413/-1M - 1B day

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

Пример

Чтобы узнать, какой день недели был Рождество 2018 года, действуйте следующим образом: в 2018 году судным днем ​​была среда. Поскольку 12 декабря - конец света, 25 декабря, то есть через тринадцать дней после этого (на две недели меньше дня), выпало на вторник. Рождество - это всегда день перед концом света. Кроме того, 4 июля (День независимости США ) всегда приходится на конец света, как и Хэллоуин (31 октября), День Пи (14 марта) и День подарков (26 декабря).

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

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

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

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

Определение дня привязки года

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

CenturyДень привязкиМнемоникаИндекс (день недели)
1800–1899Пятница5 (Пятница)
1900–1999СредаМы-в-дни. (большинство живых людей родилось в том веке)3 (Тройной день)
2000–2099ВторникY-Вт-K или Два дня. (Y2K был во главе этого века)2 (Twosday)
2100–2199ВоскресеньеДвадцать один день - воскресенье. (2100 - начало следующего столетия)0 (Noneday)

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

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

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

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

Примечание: c = ⌊год / 100.

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

  1. Разделите две последние цифры года (назовите это y) на 12 и пусть a будет floor из частного.
  2. Пусть b будет остатком от то же самое частное.
  3. Разделите этот остаток на 4 и пусть c будет нижним пределом частного.
  4. Пусть d будет суммой трех чисел (d = a + b + c). (Здесь снова можно разделить на семь и взять остаток. Это число эквивалентно, как и должно быть, сумме двух последних цифр года, взятых вместе, плюс пол этих общих цифр, разделенных на четыре.)
  5. Отсчитайте вперед указанное количество дней (d или остаток от d / 7) от дня привязки, чтобы получить годовой.
(⌊ y 12 ⌋ + y mod 1 2 + ⌊ y mod 1 2 4 ⌋) mod 7 + привязка = D oomsday {\ displaystyle {\ begin {matrix} \ left ({\ left \ lfloor {\ frac {y} {12}} \ right \ rfloor + y {\ bmod {1) }} 2+ \ left \ lfloor {\ frac {y {\ bmod {1}} 2} {4}} \ right \ rfloor} \ right) {\ bmod {7}} + {\ rm {{anchor} = {\ rm {Doomsday}}}} \ end {matrix}}}\begin{matrix}\left({\left\lfloor{\frac{y}{12}}\right\rfloor+y \bmod 12+\left\lfloor{\frac{y \bmod 12}{4}}\right\rfloor}\right) \bmod 7+\rm{anchor}=\rm{Doomsday}\end{matrix}

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

(⌊ 66 12 ⌋ + 66 mod 1 2 + ⌊ 66 mod 1 2 4 ⌋) mod 7 + среда = (5 + 6 + 1) mod 7 + среда = M onday {\ displaystyle {\ begin {matrix} \ left ({\ left \ lfloor {\ frac {66} {12}}) \ right \ rfloor +66 {\ bmod {1}} 2+ \ left \ lfloor {\ frac {66 {\ bmod {1}} 2} {4}} \ right \ rfloor} \ r ight) {\ bmod {7}} + {\ rm {среда}} = \ left (5 + 6 + 1 \ right) {\ bmod {7}} + {\ rm {среда}} \\\ = {\ rm {Monday}} \ end {matrix}}}\begin{matrix}\left({\left\lfloor{\frac{66}{12}}\right\rfloor+66 \bmod 12+\left\lfloor{\frac{66 \bmod 12}{4}}\right\rfloor}\right) \bmod 7+\rm{Wednesday} = \left(5+6+1\right) \bmod 7+\rm{Wednesday} \\ \ = \rm{Monday}\end{matrix}

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

(66 + ⌊ 66 4 ⌋) mod 7 + W ednesday = ( 66 + 16) mod 7 + среда = M onday {\ displaystyle {\ begin {matrix} \ left ({66+ \ left \ lfloor {\ frac {66} {4}} \ right \ rfloor} \ right) { \ bmod {7}} + {\ rm {среда}} = \ left (66 + 16 \ right) {\ bmod {7}} + {\ rm {среда}} \\\ = {\ rm {Monday}} \ end {matrix}}}\begin{matrix}\left({66 + \left\lfloor{\frac{66 }{4}}\right\rfloor}\right) \bmod 7+\rm{Wednesday} = \left(66+16\right) \bmod 7+\rm{Wednesday} \\ \ = \ rm{Monday}\end{matrix}

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

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

(⌊ 5 12 ⌋ + 5 mod 1 2 + ⌊ 5 mod 1 2 4 ⌋) mod 7 + T uesday = M onday {\ displaystyle \ left ({\ left \ lfloor {\ frac {5} {12}} \ right \ rfloor +5 {\ bmod {1}} 2+ \ left \ lfloor {\ frac {5 {\ bmod {1}} 2} {4}} \ right \ rfloor} \ right) {\ bmod {7}} + {\ rm {{вторник} = {\ rm {понедельник}}}}}\left({\left \lfloor{\frac{5}{12}}\right\rfloor+5 \bmod 12+\left\lfloor{\frac{5 \bmod 12}{4}}\right\rfloor}\right) \bmod 7+\rm{Tuesday}=\rm{Monday}

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

Правило судного дня

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

(y + ⌊ y 4 ⌋) mod 7. {\ displaystyle \ left (y + \ left \ lfloor {\ frac {y} {4}} \ right \ rfloor \ right) {\ bmod {7}}.}\left(y + \left\lfloor \frac{y}{4} \right\rfloor\right) \bmod 7.

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

(66 + ⌊ 66 4 ⌋) mod 7 = (66 + 16) mod 7 = 82 mod 7 = 5 {\ displaystyle \ left (66 + \ left \ lfloor {\ frac {66} {4}} \ right \ rfloor \ right) {\ bmod {7}} = (66 + 16) {\ bmod {7}} = 82 {\ bmod {7} } = 5}\left(66 + \left\lfloor \frac{66}{4} \right\rfloor\right) \bmod 7 = (66 + 16) \bmod 7 = 82 \bmod 7 = 5

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

Значение 12 заключается в том, что модель (y + ⌊y / 4⌋) mod 7 почти повторяется каждые 12 лет. Через 12 лет мы получаем (12 + 12/4) mod 7 = 15 mod 7 = 1. Если мы заменим y на y mod 12, мы выбрасываем этот лишний день; но добавление обратно в ⌊y / 12⌋ компенсирует эту ошибку, давая окончательную формулу.

Метод «odd + 11»

Простая блок-схема, показывающая метод Odd + 11

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

(y + ⌊ y 4 ⌋) mod 7 {\ displaystyle \ left (y + \ left \ lfloor {\ frac {y} {4}} \ right \ rfloor \ right) {\ bmod {7}}}\left( y + \left\lfloor \frac{y}{4} \right\rfloor\right) \bmod 7.

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

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

  1. Пусть T будут двумя последними цифрами года.
  2. Если T нечетное, добавьте 11.
  3. Теперь пусть T = T / 2.
  4. Если T нечетное, добавьте 11.
  5. Теперь пусть T = 7 - (T mod 7).
  6. Отсчитайте вперед T дней от дня привязки века, чтобы получить день привязки года.

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

  1. T = 5
  2. T = 5 + 11 = 16 (добавляем 11, потому что T нечетное)
  3. T = 16/2 = 8
  4. T = 8 (ничего не делать, так как T четно)
  5. T = 7 - (8 mod 7) = 7-1 = 6
  6. Судный день для 2005 года = 6 + вторник = понедельник

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

7 - [y + 11 (y mod 2) 2 + 11 (y + 11 (y mod 2) 2 mod 2)] mod 7 {\ displaystyle 7- \ left [{\ frac {y +11 (y \, {\ bmod {2}})} {2}} + 11 \ left ({\ frac {y + 11 (y \, {\ bmod {2}})} {2}} {\ bmod {2}} \ right) \ right] {\ bmod {7}}}{\ displaystyle 7- \ left [{\ frac {y + 11 (y \, {\ bmod {2}})} {2}} + 11 \ left ({\ frac {y + 11 (y \, {\ bmod {2}})} {2}} {\ bmod {2}} \ right) \ right] {\ bmod {7}}} .

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

Переписка с доминирующей буквой

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

Судный деньДоминическая буква
Обычный годВисокосный год
ВоскресеньеCDC
ПонедельникBCB
ВторникABA
СредаGAG
ЧетвергFGF
ПятницаEFE
СубботаDED

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

Сотни летD. LЦифры оставшегося года#
юлианский. (r ÷ 7)григорианский. (r ÷ 4)
r5191620r0A00 06 17 232834 45 515662 73 7984900
r41815 19 r3G01 07 121829 35 404657 63 687485 91 961
r317
Н / Д
F02 13 19 2430 41 47 5258 69 75 8086 972
r21618 22 r2E03 08 14 2531 36 42 5359 64 70 8187 92983
r115
Н / Д
D09 15 202637 43 485465 71 768293 994
r01417 21 r1C0410 21 273238 49 556066 77 8388945
r613
Н / Д
B05 11 162233 39 445061 67 727889 956

За 2017 год доминирующая буква A - 0 = A.

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

марта апреля июня июля августа ноября
МесяцДатыНомера недель *
Январь (обычные годы)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

* В високосные годы n-й конец света находится в неделе ISO n. В обычные годы день после n-го судного дня находится на n-й неделе. Таким образом, в обычном году номер недели самого конца света на единицу меньше, если это воскресенье, то есть в обычном году, начинающемся с пятницы.

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

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

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

день привязки = вторник + y + ⌊ y 4 ⌋ - y 100 ⌋ + ⌊ y 400 ⌋ = вторник + 5 × (y mod 4) + 4 × (y mod 1 00) + 6 × (y mod 4 00) {\ displaystyle {\ t_dv {anchor day}} = {\ t_dv {вторник}} + y + \ left \ lfloor {\ frac {y} {4}} \ right \ rfloor - \ left \ lfloor {\ frac {y} {100}} \ right \ rfloor + \ left \ lfloor {\ frac {y} {400}} \ right \ rfloor = {\ t_dv {вторник}} + 5 \ times (y {\ bmod {4}}) + 4 \ times (y {\ bmod {1}} 00) +6 \ times (y {\ bmod {4}} 00)}{\displaystyle {\t_dv{anchor day}}={\t_dv{Tuesday}}+y+\left\lfloor {\frac {y}{4}}\right\rfloor -\left\lfloor {\frac {y}{100}}\right\rfloor +\left\lfloor {\frac {y}{400}}\right\rfloor ={\t_dv{Tuesday}}+5\times (y{\bmod {4}})+4\times (y{\bmod {1}}00)+6\times (y{\bmod {4}}00)}

Например, Судный день 2009 - это суббота по григорианскому календарю (принятый в настоящее время календарь), поскольку

суббота (6) по модулю 7 = вторник (2) + 2009 + ⌊ 2009 4 ⌋ - ⌊ 2009 100 ⌋ + ⌊ 2009 400 ⌋ {\ displaystyle {\ t_dv {суббота (6)}} {\ bmod {7}} = {\ t_dv {вторник (2)}} + 2009+ \ left \ lfloor {\ frac {2009} {4}} \ right \ rfloor - \ left \ lfloor {\ frac {2009} {100}} \ right \ rfloor + \ left \ lfloor {\ frac {2009} {400}} \ right \ rfloor}\t_dv{Saturday (6)} \bmod 7 = \t_dv{Tuesday (2)} + 2009 + \left\lfloor\frac{2009}{4}\right\rfloor - \left\lfloor\frac{2009 }{100}\right\rfloor + \left\lfloor\frac{2009}{400}\right\rfloor

В качестве другого примера, судный день 1946 года - четверг, так как

четверг (4) mod 7 = вторник (2) + 1946 + ⌊ 1946 4 ⌋ - ⌊ 1946 100 ⌋ + ⌊ 1946 400 ⌋ {\ displaystyle {\ t_dv {четверг (4)}} {\ bmod {7}} = {\ t_dv {вторник (2)}} + 1946+ \ left \ lfloor {\ frac {1946} { 4}} \ right \ rfloor - \ left \ lfloor {\ frac {1946} {100}} \ right \ rfloor + \ left \ lfloor {\ frac {1946} {400}} \ right \ rfloor}\t_dv{Thursday (4)} \bmod 7 = \t_dv{Tuesday (2)} + 1946 + \left\lfloor\frac{1946}{4} \right\rfloor - \left\lfloor\frac{1946}{100}\right\rfloor + \left\lfloor\frac{1946}{400}\right\rfloor

Для по юлианскому календарю:

день привязки = воскресенье + y + ⌊ y 4 ⌋ = воскресенье + 5 × (y mod 4) + 3 × (y mod 7) {\ displaystyle {\ t_dv {anchor day}} = {\ t_dv {воскресенье}} + y + \ left \ lfloor {\ frac {y} {4}} \ right \ rfloor = {\ t_dv {Sunday}} + 5 \ times (y {\ bmod {4}}) + 3 \ times (y {\ bmod {7}})}{\displaystyle {\t_dv{anchor day}}={\t_dv{Sunday}} +y+\left\lfloor {\frac {y}{4}}\right\rfloor ={\t_dv{Sunday}}+5\times (y{\bmod {4}})+3\times (y{\ 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-1000J. -300J. 400J. 1100J. 1800J. 2500J. 3200J. 3900J
по григорианскому календарю. столетия. Годы-1600. -1200. -800. -400. 0. 400. 800. 1200. 1600. 2000. 2400. 2800. 3200. 3600-1500. -1100. -700. -300. 100. 500. 900. 1300. 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
00285684Вт.Пн.Вс.сб.пт.чт.ср.
01295785Ср.Вт.Пн.ВсСб.Птчт.
02305886Чт.Ср.Вт.Пн.ВсСб.пт.
03315987Пт.Чт.Ср.Вт.Пн.Вс.сб.
04326088ВсСбПтЧт.Ср.ВтПн.
05336189Пн.ВсСб.Пт.Чт.Ср.Вт.
06346290вт.Пн.ВсСб.Пт.Чтср.
07356391Ср.Вт.Пн.ВсСб.Птчт.
08366492Пт.Чт.Ср.Вт.Пн.Вс.сб.
09376593Сб.ПтЧтСр.Вт.ПнВс.
10386694ВсСбПтЧтСр.ВтПн.
11396795Пн.Вс.Сб.ПтЧт.Ср.Вт.
12406896Ср.Вт.Пн.ВсСб.Птчт.
13416997Чт.Ср.Вт.Пн.ВсСб.пт.
14427098Пт.Чт.Ср.Вт.Пн.Вс.сб.
15437199Сб.ПтЧтСр.Вт.ПнВс.
164472Пн.ВсСбПтЧт.Ср.Вт.
174573Вт.Пн.ВсСб.ПтЧтСр.
184674Ср.Вт.Пн.ВсСб.ПтЧт.
194775Чт.Ср.Вт.Пн.ВсСб.Пт.
204876Сб.ПтЧтСр.Вт.Пн.Солнце.
214977Вс.Сб.ПтЧтСр.Вт.Пн.
225078Пн.ВсСбПтЧт.Ср.Вт.
235179Вт.Пн.ВсСб.ПтЧтСр.
245280Чт.Ср.Вт.ПнВсСб.Пт.
255381Пт.Чт.Ср.Вт.Пн.Вс.Сб.
265482Сб.ПтЧтСр.Вт.Пн.Солнце.
275583ВсСб.ПтЧтСр.Вт.Пн.

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

Полный 400-летний цикл судных дней приведен в таблице рядом. Столетия относятся к григорианскому и пролептическому григорианскому календарю, если они не отмечены буквой J для юлианского. Выделены григорианские високосные годы.

Отрицательные годы используют астрономический год. Год 25BC равен -24, что показано в столбце -100J (пролептический юлианский) или -100 (пролептический григорианский) в строке 76.

Частота грегорианского Судного дня в 400-летнем цикле для буднего дня и типа года
ВоскресеньеПонедельникВторникСредаЧетвергПятницаСубботаВсего
Невисокосные годы43434343444344303
Високосные годы1315131513141497
Всего56585658575758400

Високосный год с понедельником в качестве конца света означает, что воскресенье является одним из 97 дней, пропущенных в 400-летней последовательности. Таким образом, общее количество лет, в которых воскресенье является концом света, составляет 71 минус количество високосных лет, в которых понедельник является концом света, и т. Д. Поскольку понедельник как конец света пропускается через 29 февраля 2000 г., а структура високосных дней симметрична этому високосному дню, частоты Судных дней в будний день (добавляя обычный и високосный годы) симметрично понедельнику. Частоты конца света високосных лет в будние дни симметричны по отношению к судному дню 2000 года, вторнику.

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

Например, 28 февраля - это один день после Судного Дня предыдущего года, то есть по 58 раз по вторникам, четвергам и воскресеньям и т. Д. 29 февраля - Судный день високосного года, то есть 15 раз. каждый в понедельник, среду и т. д.

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

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

Для любой даты до 28 февраля, приходящейся на конкретный будний день, 3 общих года - это 5, 11 и 22 года после високосного года, поэтому с интервалами в 5, 6, 11 и 6 лет.. Таким образом, цикл тот же, но с 5-летним интервалом после, а не до високосного года.

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

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

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

Григорианский календарь в настоящее время точно соответствует астрономическим событиям, таким как солнцестояние. В 1582 году впервые была введена эта модификация юлианского календаря. Чтобы скорректировать календарный дрейф, 10 дней были пропущены, поэтому Судный день сдвинулся на 10 дней (т.е. 3 дня): за четвергом 4 октября (по юлианскому календарю, конец света - среда) последовала пятница, 15 октября (по григорианскому календарю, конец света - воскресенье). В таблице указаны годы юлианского календаря, но алгоритм предназначен только для григорианского и пролептического григорианского календаря.

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

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

Пример 1 (1985)

Предположим, вы хотите узнать день недели 18 сентября 1985 года. Вы начинаете с якорного дня века, среды. К этому добавьте a, b и c выше:

  • a - нижний предел 85/12, который равен 7.
  • b - 85 mod 12, что равно 1.
  • c - это нижний предел b / 4, который равен 0.

Это дает a + b + c = 8. Считая 8 дней со среды, мы достигаем четверга, который является концом света в 1985 году. (Используя числа: по модулю 7 в арифметике 8 соответствует 1. Поскольку день привязки века - среда (индекс 3), а 3 + 1 = 4, Судный день в 1985 году был четвергом (индекс 4). Теперь мы сравним 18 сентября с ближайшим Судным днем, 5 сентября. Мы видим, что 18-е число - это 13-е число после конца света, то есть на один день меньше двух недель. Следовательно, 18-е число было средой (день, предшествующий четвергу). (Используя числа: в арифметике по модулю 7, 13 соответствует 6 или, более кратко, -1. Таким образом, мы убираем единицу из конца света, четверга, и обнаруживаем, что 18 сентября 1985 года было средой.)

Пример 2 (другие столетия)

Предположим, вы хотите найти день недели, когда Гражданская война в США разразилась в Форт-Самтер, то есть в апреле 12, 1861. Днем привязки столетия было 99 дней после четверга, или, другими словами, пятницы (рассчитывается как (18 + 1) × 5 + ⌊18 / 4⌋; или просто посмотрите на диаграмму выше, которая перечисляет якорные дни века). Цифра 61 означала смещение на шесть дней, так что конец света был четвергом. Таким образом, 4 апреля было четвергом, а 12 апреля, восемь дней спустя, было пятницей.

См. Также

Ссылки

Внешние ссылки

На Викискладе есть средства массовой информации, связанные с Правилом Судного дня.
Последняя правка сделана 2021-05-17 13:11:37
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте