Dieser Code funktioniert:
Code: Alles auswählen
Procedure jultag_SK(y.l, m.l)
If m > 2
If y % 400 = 0
ProcedureReturn 1
ElseIf y % 4 = 0 And y % 100
ProcedureReturn 1
EndIf
EndIf
ProcedureReturn 0
EndProcedure
Procedure.l jultag_MK(m.l)
Protected r.l
Select m
Case 1, 4, 5 : r = -1
Case 2, 6, 7 : r = 0
Case 3 : r = -2
Case 8 : r = 1
Case 9, 10 : r = 2
Case 11 : r = 3
EndSelect
ProcedureReturn r
EndProcedure
Procedure jultag_LT(y.l, m.l, d.l)
Protected r.l
r = jultag_MK(m)
ProcedureReturn d + 30 * (m - 1) + jultag_SK(y, m) + r
EndProcedure
Debug jultag_LT(1917, 10, 25)
Code: Alles auswählen
Procedure jultag_SK(y.l, m.l)
If m > 2
If y % 400 = 0
ProcedureReturn 1
ElseIf y % 4 = 0 And y % 100
ProcedureReturn 1
EndIf
EndIf
ProcedureReturn 0
EndProcedure
Procedure.l jultag_MK(m.l)
Protected r.l
Select m
Case 1, 4, 5 : r = -1
Case 2, 6, 7 : r = 0
Case 3 : r = -2
Case 8 : r = 1
Case 9, 10 : r = 2
Case 11 : r = 3
EndSelect
ProcedureReturn r
EndProcedure
Procedure jultag_LT(y.l, m.l, d.l)
ProcedureReturn d + 30 * (m - 1) + jultag_SK(y, m) + jultag_MK(m)
EndProcedure
Debug jultag_LT(1917, 10, 25)
Code: Alles auswählen
;Code von oben
Procedure jultag_LT(y.l, m.l, d.l)
Protected r.l
r = d + 30 * (m - 1) + jultag_SK(y, m) + jultag_MK(m)
ProcedureReturn r
EndProcedure