Алгоритм Гаусса вычисления даты Пасхи

Алгоритм Гаусса вычисления даты Пасхи — математический алгоритм, предназначенный для определения дня празднования Пасхи в любом году. Предложен впервые немецким математиком Карлом Гауссом в 1800 году. Сам Гаусс привёл формулы без вывода. Объяснение каждого шага алгоритма дал профессор Базельского университета Г. Кинкелин в 1870г.

Алгоритм для вычисления даты Пасхи


 Для определения даты Православной пасхи по старому стилю необходимо:

  1. Разделить номер года на 19 и определить остаток от деления a.
  2. Разделить номер года на 4 и определить остаток от деления b.
  3. Разделить номер года на 7 и определить остаток от деления c.
  4. Разделить сумму 19a + 15 на 30 и определить остаток d.
  5. Разделить сумму 2b + 4c + 6d + 6 на 7 и определить остаток e.
  6. Определить сумму f = d + e.
  7. Если f ≤ 9, то Пасха будет праздноваться 22 + f марта; если f \textgreater 9, то Пасха будет праздноваться f — 9 апреля.

 Более сложный алгоритм расчёта Католической пасхи покажем на примере.
Пример на 1777 год (год рождения Карла Гаусса):
Выражениегод = 1777
a = год mod 19a = 10
b = год mod 4b = 1
c = год mod 7c = 6
k = целая часть (год/100)k = 17
p = целая часть ((13 + 8k)/25)p = 5
q = целая часть (k/4)q = 4
M = (15 − p + kq) mod 30M = 23
N = (4 + kq) mod 7N = 3
d = (19a + M) mod 30d = 3
e = (2b + 4c + 6d + N) mod 7e = 5
Дата Пасхи по новому стилю: 22 + d + e марта или d + e − 9 апреля30 марта
colspan=2 Если d = 29 и e = 6, то вместо 26 апреля будет 19 апреля
colspan=2 Если d = 28, e = 6 и (11M + 11) mod 30 \textless 19, то вместо 25 апреля будет 18 апреля

Важнейшие оговорки



  • Данный алгоритм предназначен именно для расчёта Католической пасхи (то есть для пасхалии по григорианскому календарю). Для расчёта даты Православной пасхи по старому стилю (по юлианскому календарю) значения величин M и N принимаются: M=15 и N=6 независимо от века, а не вычисляются по приведённым формулам; получается алгоритм, приведенный в начале статьи. Вычисление M и N для григорианской пасхалии необходимо из-за того, что в григорианском календаре года, кратные 100, не високосные, кроме тех, что кратны 400, в то время как в юлианском календаре все года, кратные 4, — високосные без всяких исключений. Для перевода на новый стиль дату, вычисленную для Православной пасхи, нужно сдвинуть вперёд на 13 дней в 20-м и 21-м веках. Католическая пасха всегда заключается между 22 марта и 25 апреля нового стиля, а Православная — между 22 марта и 25 апреля старого стиля, то есть в 20-м и 21-м веках — с 4 апреля по 8 мая нового стиля.
  • Формулы для расчёта Католической пасхи предусматривают два исключения: если d = 29 и e = 6, то Пасха переносится с 26 на 19 апреля; если d = 28 и e = 6, то с 25 на 18 апреля. Это условие было введено Гауссом в 1811 году.
  • Значения величин M и N зависят от века, так что их можно рассчитать отдельно. Для 20-го и 21-го веков получаем: M=24, N=5. Для 19-го: M=23, N=4. Для 18-го века см. пример.

История создания алгоритма


 В 1800 году Карл Фридрих Гаусс впервые представил алгоритм для вычисления Пасхи по старому и новому стилям. Гаусс неоднократно корректировал алгоритм: так, в 1807 году из алгоритма было исключено условие (11M + 11) mod 30 \textless 19, вместо которого было выбрано более простое a \textgreater 10. В 1811 году он добавил условия по поводу переноса дат в апреле с 26 на 19 и с 25 на 18 число, указав, что этот алгоритм применим для вычисления дат в XVIII и XIX веках.
 В 1816 году его студент Петер Пауль Титтель обнаружил ошибку в вычислении даты Пасхи в 1800 году: значение p = целая часть (k/3) было установлено некорректно. Гаусс исправил эту ошибку и отблагодарил студента за помощь.