34 lines
1.1 KiB
Plaintext
34 lines
1.1 KiB
Plaintext
DECLARE month$[] = { "January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December" }
|
|
DECLARE month[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }
|
|
year$ = "1969"
|
|
' Leap year
|
|
INCR month[1], IIF(MOD(VAL(year$), 4) = 0 OR MOD(VAL(year$), 100) = 0 AND MOD(VAL(year$), 400) <> 0, 1, 0)
|
|
PRINT ALIGN$("[SNOOPY HERE]", 132, 2)
|
|
PRINT ALIGN$(year$, 132, 2)
|
|
FOR nr = 0 TO 11
|
|
row = 3
|
|
GOTOXY 1+(nr %6)*22, row+(nr/6)*9
|
|
PRINT ALIGN$(month$[nr], 21, 2);
|
|
INCR row
|
|
GOTOXY 1+(nr %6)*22, row+(nr/6)*9
|
|
PRINT ALIGN$("Mo Tu We Th Fr Sa Su", 21, 2);
|
|
INCR row
|
|
' Each day
|
|
FOR day = 1 TO month[nr]
|
|
' Zeller
|
|
J = VAL(LEFT$(year$, 2))
|
|
K = VAL(MID$(year$, 3, 2))
|
|
m = nr+1
|
|
IF nr < 2 THEN
|
|
INCR m, 12
|
|
DECR K
|
|
END IF
|
|
h = (day + ((m+1)*26)/10 + K + (K/4) + (J/4) + 5*J)
|
|
daynr = MOD(h, 7) - 2
|
|
IF daynr < 0 THEN INCR daynr, 7
|
|
IF daynr = 0 AND day > 1 THEN INCR row
|
|
GOTOXY 1+(nr %6)*22+daynr*3, row+(nr/6)*9
|
|
PRINT day;
|
|
NEXT
|
|
NEXT
|