8.8.2 Второй пример: вычисление даты пасхи
Никейский собор в 325 г. установил, что пасху следует праздновать в первое воскресенье после первого весеннего полнолуния. На этом основан метод Гаусса для определения даты пасхального воскресенья. Согласно нему, если задан год jahr (например, 1994), то дату пасхального воскресенья, можно вычислить с помощью следующих операций:k = целый результат деления jahr/100
р = целый результат деления k/3
q = целый результат деления k/4
m = 15 + k — p — q
ml = остаток от деления т/30
n = 4 + k - q
nl = остаток от деления п/7
а = остаток от деления jahr/19
Ь = остаток от деления jahr/4
с = остаток от деления jahr/7
d = 19 * а + ml
dl = остаток от деления d/30
e = 2*b + 4*c + 6*dl + nl
el = остаток от деления е/7
х = 22 + dl + elДля определения х существует два исключения
- Если x=57, то х принимается равным 50
- Если d1=28 и el=6, а остаток деления в выражении (11*m+11)/30 меньше 19, то х принимается равным 49
COMPUTE k=TRUNC(jahr/100) .
COMPUTE p=TRUNC(k/3) .
COMPUTE q=TRUNC(k/4) .
COMPUTE m=15+k-p-q .
COMPUTE ml=MOD(m,30) .
COMPUTE n=4+k-g .
COMPUTE nl=MOD(n,7) .
COMPUTE a=MOD(jahr,19) .
COMPUTE b=MOD(jahr,4) .
COMPUTE c=MOD(jahr,7)
COMPUTE d=19*a+ml .
COMPUTE dl=MOD(d,30) .
COMPUTE e=2*b+4*c+6*dl+nl .
COMPUTE el=MOD(e,7) .
COMPUTE x=22+dl+el .
IF x=57 x=50 .
IF dl=28 AND el=6
AND MOD (ll*m+ll,30)<19 x=49 .
COMPUTE tag=x .
COMPUTE monat=3 .
IF (x > 31) tag=x-31 .
IF (x > 31) monat=4 .
COMPUTE odatum=DATE.MDY(raonat,tag,jahr) .
FORMATS odatum(DATEll) .
LIST odatum .Переменные tag и monat определяют дату пасхального воскресенья заданного года (переменной jahr). На их основе функция DATE.MDY вычисляет значение времени во внутреннем формате SPSS (число секунд после введения григорианского календаря). Затем это значение записывается в переменную odatum, которая преобразуется в формат даты DATE11. После ввода программы или открытия файла в редакторе синтексиса с помощью меню Edit (Правка) выделите все строки и запустите программу. С помощью команды LIST в окне просмотра буде сформирована следующая таблица, фрагмент которой с 1995 до 2002 года, приводится ниже:
ODATUM
16-APR-1995
07-APR-1996
30-MAR-1997
12-APR-1998
04-APR-1999
23-APR-2000
15-APR-2001
31-MAR-2002Обладая некоторой фантазией и знанием командного синтаксиса SPSS, можно решать задачи, не связанные непосредственно со статистическими вычислениями.
Назад | Содержание |