Jump to content

Sky Slate Blueberry Blackcurrant Watermelon Strawberry Orange Banana Apple Emerald Chocolate
Photo

[Feiertage berechnen] Osterformel nach Heiner Lichtenberg


  • Please log in to reply
8 replies to this topic
Seidenweber
  • Moderators
  • 638 posts
  • Last active: Sep 06 2015 01:51 PM
  • Joined: 10 May 2011

Ich habe das gerade für mich gebraucht und dachte, ich stell' das mal hier rein.
Vielleicht kann das ja mal jemand für seine Hausaufgaben oder ein Progrämmchen gebrauchen... wink.png
 

;   Funktion ......: Osterberechnung
;   Urheber .......: Dr. Heiner Lichtenberg
;                    Abwandlung der Gaußschen Osterformel zur Beseitigung der Ausnahmeregeln
;                    HISTORIA MATHEMATICA 24 (1997), 441–444 // ARTICLE NO. HM972170
;                    Quelle: http://www.sciencedirect.com/science/article/pii/S0315086097921704
;   AHK Version ...: AHK_L 1.1.13.00 x64 Unicode
;   Win Version ...: Windows 7 Ultimate x64 SP1
;   Author(s) .....: Seidenweber

; =='GLOBALE EINSTELLUNGEN'======================================================================================================

    #NoEnv                      ; Nicht nachsehen, ob leere Varibalen evtl. Umgebungsvariablen sind
    #SingleInstance force       ; Bei Neustart des Scriptes die alte Instanz ohne Nachfrage ersetzen
    SetBatchLines -1            ; Das Script läuft ohne Zwangspausen. (nur für schnelle Rechner empfohlen)
    SetControlDelay, -1         ; Wartezeit beim Zugriff auf langsame Controls abschalten. (nur für schnelle Rechner empfohlen)
    SetWinDelay, -1             ; Verzögerung bei allen Fensteroperationen abschalten. (nur für schnelle Rechner empfohlen)

; =='AUTOEXEC-SEKTION'===========================================================================================================

    X := 2014                                               ; Jahreszahl, für die Ostern berechnet werden soll

    K  := Floor(X/100)                                      ; Säkularzahl
    M  := 15+Floor((3*K+3)/4)-Floor((8*K+13)/25)            ; säkulare Mondschaltung
    S  := 2-Floor((3*K+3)/4)                                ; säkulare Sonnenschaltung
    A  := Mod(X,19)                                         ; Mondparameter
    D  := Mod(19*A+M,30)                                    ; Keim für den ersten Vollmond im Frühling
    R  := Floor(D/29)+(Floor(D/28)-Floor(D/29))*Floor(A/11) ; kalendarische Korrekturgröße (beseitigt die Gaußschen Ausnahmeregeln)
    OG := 21+D-R                                            ; Ostergrenze (Märzdatum des Ostervollmonds)
    SZ := 7-Mod(X+Floor(X/4)+S,7)                           ; Erster Sonntag im März
    OE := 7-Mod(OG-SZ,7)                                    ; Entfernung des Ostersonntag von der Ostergrenze in Tagen
    OS := OG+OE                                             ; Märzdatum (ggf. in den April verlängert) des Ostersonntag, (32. März = 1. April usw.)

    FormatTime, Osterdatum,% x (OS > 31 ? "04" SubStr("0"OS-31,-1) : "03" OS), LongDate

    MsgBox, 4160,% "Ostern " X,% Osterdatum

 

Änderungen zur Berechnung nach Julianischem Kalender

Der obige Rechengang gilt für den (ab Oktober 1582 eingeführten) Gregorianischen Kalender mit der durchschnittlichen Jahreslänge von 146097/400 = 365,2425 Tagen
und der durchschnittlichen (Mond-)Monatslänge von 2081882250/70499183 = 29,5305869... Tagen.

Ersetzt man die säkularen Schaltfunktionen durch die konstanten Werte M=15 und S=0, so erhält man die Zeitrechnung nach Julianischem Kalender mit einer durchschnittlichen
Jahreslänge von 1461/4 = 365,25 Tagen und einer durchschnittlichen (Mond-)Monatslänge von 27759/940 = 29,53085... Tagen.

Im Falle des Julianischen Kalenders erübrigen sich die Berechnungen von K, M, und S; aber auch die Berechnung von R kann entfallen, da R stets Null bleibt.


All questions & answers are related to AHK 1.1.19.03 x64 Unicode

 


Alibaba
  • Members
  • 435 posts
  • Last active: Nov 19 2014 04:21 PM
  • Joined: 01 Nov 2012

Das ist ja super! Gleich mal schauen wann in 10000 Jahren Ostern ist... wink.png


Find the recent autohotkey version here: ahkscript.org


Seidenweber
  • Moderators
  • 638 posts
  • Last active: Sep 06 2015 01:51 PM
  • Joined: 10 May 2011

Das ist ja super! Gleich mal schauen wann in 10000 Jahren Ostern ist... ;)

Ja, und so unglaublich neu :)


All questions & answers are related to AHK 1.1.19.03 x64 Unicode

 


nnnik
  • Members
  • 1625 posts
  • Last active: Jan 24 2019 02:19 PM
  • Joined: 28 Jul 2012

Kann ich ja mal schauen wann ich wieder an Ostern Geburtstag habe.


Visit the new forum ahkscript.org.

http://ahkscript.org


Alibaba
  • Members
  • 435 posts
  • Last active: Nov 19 2014 04:21 PM
  • Joined: 01 Nov 2012

Für alle Jahre nach 9999 gibt es kein Osterdatum...

Entweder das liegt an der Säkularzahl oder die Welt geht dann endgültig unter. :D


Find the recent autohotkey version here: ahkscript.org


SAPlayer
  • Members
  • 403 posts
  • Last active: Apr 11 2014 04:45 PM
  • Joined: 06 Nov 2012

Das liegt an FormatTime, die Jahreszahl darf darf maximal vier Stellen haben (YYYYMMDDHH24MISS).



Alibaba
  • Members
  • 435 posts
  • Last active: Nov 19 2014 04:21 PM
  • Joined: 01 Nov 2012

Ahh... Man lernt eben nie aus. :D


Find the recent autohotkey version here: ahkscript.org


Kuriosus
  • Members
  • 4 posts
  • Last active: Sep 27 2013 01:14 PM
  • Joined: 27 Sep 2013

Ja, und so unglaublich neu happy.png

 

Vielleicht nicht unglaublich neu, aber doch immer wieder witzig zum Herumspielen. ;)



fredchf
  • Members
  • 111 posts
  • Last active: Oct 10 2015 02:08 PM
  • Joined: 02 Nov 2012

Das liegt an FormatTime, die Jahreszahl darf darf maximal vier Stellen haben (YYYYMMDDHH24MISS).

Oh, da sehe ja für die Zukunft große Probleme auf uns zukommen...wink.png

Aber so lange wird es sicher keine Menschen mehr geben. Wir arbeiten daran.