Wochentage bestimmen

An welchem Wochentag war die erste Mondlandung? An welchem Wochentag bist du geboren? An welchem Wochentag ist dieses Jahr Heiligabend?

Für diese Fragen kann man natürlich einen Kalender verwenden. Alternativ kann man das aber auch im Kopf ausrechnen. Das geht schneller, kommt ohne Hilfsmittel aus und ist auch gar nicht so kompliziert. Ich möchte hier nicht nur einen Algorithmus vorstellen, sondern auch Schritt für Schritt erarbeiten, wie man selbst auf einen solches Verfahren kommen könnte. Am Ende werden wir dann den Algorithmus zusammenfügen und anwenden.

Grundlegende Feststellungen

Ein Datum setzt sich aus dem Tag, Monat und Jahr zusammen. Relevant ist dabei, dass sie für den Wochentag (fast) unabhängig sind. Wenn man zum Beispiel nur den Tag ändert, aber Monat und Jahr gleich lässt, kann man sich überlegen, wie sich der Wochentag ändert. Dazu muss man Monat und Jahr nicht einmal kennen. Heiligabend und Silvester fallen in jedem Jahr auf den gleichen Tag, einfach weil sich 24 und 31 genau um 7 Tage unterscheiden.

Genauso ist das auch mit dem Monat. Vom 1. Januar bis zum 1. Februar sind es immer 31 Tage. Wenn der 1. Januar also ein Dienstag war, ist der 1. Februar ein Freitag, ganz egal in welchem Jahr wir sind. Die einzige Ausnahme sind Schaltjahre. Vom 1. Februar bis zum 1. März können es 28 oder 29 Tage sein, das hängt davon ab, ob das Jahr ein Schaltjahr ist. Die Schaltjahre werden wir zunächst ignorieren und später mit einbauen.

Wahrscheinlich hast du schon einmal festgestellt, dass sich dein Geburtstag jedes Jahr um einen Wochentag verschiebt (das Schaltjahr ist wieder die Ausnahme). Das liegt daran, dass ein Jahr 365=52\cdot7+1 Tage hat, also genau 52 Wochen und ein Tag.

Was ist also der Plan für das Verfahren der Wochentagsbestimmung? Wir gehen von einem Datum aus und schauen uns jeweils die Änderung in Tag, Monat und Jahr an. Diese gesamte Änderung zählen wir zusammen und finden so die Änderung im Wochentag heraus.

Als Ausgangsdatum nehmen wir mal den 1. Januar 2001. Hier könnten wir auch etwas Anderes nehmen, 2000 ist etwas ungünstiger, weil das ein Schaltjahr war. Dieser Tag war ein Montag. Jetzt haben wir nochmal einige Wahlmöglichkeiten. Zum Einen brauchen wir Ausgangszahlen für den 1., Januar und 2001. Dazu muss eine Umrechnung von Zahlen auf Wochentage passen, sodass dieser Tag tatsächlich ein Montag ist.

Den 1. eines Monats geben wir die Zahl 1, weil wir dann in der Berechnung direkt den Tag übernehmen können. Januar und 2001 geben wir der Einfachheit halber jeweils die Ausgangszahl 0. Insgesamt entspricht das Datum also der Zahl 1+0+0=1, daher muss die 1 ein Montag sein. Das Umrechnungsverfahren wird also so funktionieren, dass die 1 dem Montag entspricht, die 2 dem Dienstag, die 3 dem Mittwoch, bis hin zur 7, die dem Sonntag entspricht. Falls wir eine Zahl größer als 7 erhalten können wir erst einmal ein Vielfaches von 7 abziehen, weil eine Woche später wieder die gleiche Wochentag ist.

Für den Tag können wir jetzt die Zahl des Datums übernehmen, weil wir uns ja gerade für die Differenz in Wochentagen interessieren. Wir können jetzt also schon Wochentage im Januar 2001 bestimmen. Für den 27. Januar 2001 rechnen wir 27+0+0=27. Jetzt können wir dreimal 7 abziehen und erhalten 6, also einen Samstag.

Was ist mit den Monaten?

Der Januar hat 31 Tage, also verschieben wir von Januar auf Februar um 3 Wochentage. Da Januar die Ausgangzahl 0 hat, haben wir für Februar eine 3. Damit können wir jetzt auch Wochentage im Februar 2001 berechnen. Zum Beispiel war der 13. Februar 2001 ein Dienstag, weil 13+3+0=16 ist. Von Februar bis März sind es 28 Tage (Schaltjahre vernachlässigen wir), also nehmen wir für März auch eine 3. Genauso können wir jetzt für alle zwölf Monate vorgehen und die Differenz addieren. Hier ist das Endergebnis mit ein paar Merkhilfen:

  • Januar: 0 (das haben wir so festgelegt, weil es einfach ist)
  • Februar: 3 (er ist 3 Tage kürzer als der Januar)
  • März: 3 (der 3. Monat)
  • April: 6 (genau die Monate, die ein l enthalten, bekommen eine 6)
  • Mai: 1 (der Tag der Arbeit ist am 1.)
  • Juni: 4 (4 Buchstaben)
  • Juli: 6 (siehe April)
  • August: 2 (beginnt mit 2 Vokalen)
  • September: 5 (das S ähnelt einer 5)
  • Oktober: 0 (das O ähnelt einer 0)
  • November: 3 (das N besteht aus 3 Linien)
  • Dezember: 5 (der erste Weihnachstsfeiertag ist am 25. und 5\cdot 5 = 25)

Beim Mai wären wir zum Beispiel zunächst auf 8 gekommen, weil der April 30 Tage hat. Wir interessieren uns aber nur um die Änderung im Wochentag und nicht wie viele Wochen vergangen sind, daher können wir auch schon hier 7 abziehen, um die Rechnung leichter zu machen.

Jetzt können wir also schon zu jedem Datum im Jahr 2001 den Wochentag ausrechnen. Der 11. September 2001 war ein Dienstag, weil 11+5+0=16 ist.

Wie funktioniert das mit den Jahren

Jetzt müssen wir uns zwangsläufig auch mit Schaltjahren beschäftigen und zwar, zunächst einmal wann überhaupt ein Schaltjahr ist. Das sind alle Jahre, die durch 4 teilbar sind, was genau dann der Fall ist, wenn die letzten beiden Ziffern durch 4 teilbar sind (mit solchen Teilbarkeitsregeln beschäftigen wir uns im nächsten Artikel). Ausnahmen sind Jahre, die durch 100 teilbar sind. Dazu gibt es wieder eine Ausnahme. Nämlich sind Jahre, die durch 400 teilbar sind, dann doch wieder Schaltjahre. Also war 1900 kein Schaltjahr, 2000 aber schon. Für die Ausnahme und die Ausnahme der Ausnahme ist nur das Jahrhunder relevant, also können wir die Bestimmung unserer Zahl auch noch einmal zerlegen in das Jahrhundert und den Rest.

Betrachten wir also zunächst nur Jahre im 21. Jahrhundert. Die 2001 entspricht der 0. Es bietet sich an, einem Jahr 01 die Zahl 1 zu geben, also können wir dem 21. Jahrhundert eine 6 geben, um insgesamt auf 7, also 0, zu ko kommen. Jetzt addieren wir für jedes Jahr 1, also bekommt die 02 eine 2 und die 03 eine 3. Dazu kommen noch die Schaltjahre, wir addieren also noch die Anzahl der Schaltjahre. Für das Jahr 2042 haben wir also zunächst 6 für das 21. Jahrhundert. Dazu kommen die 42 Jahre, wovon 10 Schaltjahre sind (wir dividieren durch 4 und ignorieren jeglichen Rest). Wir erhalten also 6+42+10=58, was einer 2 enspricht. Also wird der 1. Januar 2042 ein Mittwoch sein, da 1+0+2=3 gilt.

In 100 Jahren gibt es 24 Schaltjahre, weil die durch 100 teilbaren keine Schaltjahre sind (außer sie sind auch durch 400 teilbar). Wenn wir statt dem 21. also das 22. Jahrhundert betrachten, nehmen wir statt 6 eine 6+100+24=130, was einer 4 enstpricht. Wir erhalten dann folgendes:

  • Jahre der Form 20xx: 6
  • 21xx: 4
  • 22xx: 2
  • 23xx: 0
  • 24xx: 6

In jedem Übergang müssen wir 2 abziehen, außer im letzten Fall, weil 2400 ein Schaltjahr sein wird. Wir beobachten, dass nach 400 Jahren die gleiche Zahl herauskommt. Weil sich auch alle anderen Regeln alle 400 Jahre wiederholen, wiederholt sich der gesamte Kalender nach 400 Jahren. Daher können wir statt 19xx auch 23xx ausrechnen, für das 20. Jahrhundert haben wir also auch eine 0.

Wenn das Jahr selbst ein Schaltjahr ist, haben wir einen Sonderfall. Normalerweise zählen wir das Jahr dann mit, bei 2004 würden wir 6+4+1=11, also 4 als Zahl erhalten. Wenn der Monat Januar oder Februar ist, stimmt das aber nicht, weil der Schalttag noch gar nicht stattgefunden hat. In den anderen Monaten ist es allerdings schon richtig. Wenn also das Jahr ein Schaltjahr ist und der Monat ist Januar oder Februar müssen wir am Ende wieder 1 abziehen, um das einberechnete Schaltjahr zu korrigieren. Beim 3. Februar 2004 rechnen wir also 3+3+4-1=9 und erhalten einen Dienstag.

Zusammengefasst funktioniert das Verfahren also folgendermaßen. Wir addieren den Tag zu dem Monatscode und der Zahl für das Jahrhundert. Dazu addieren wir den Rest der Jahre und die Anzahl der Schaltjahre. Falls ein Schaltjahr vorliegt und der Monat Januar oder Februar ist, müssen wir wieder 1 abziehen. Danach ziehen wir so oft wie möglich 7 ab und wandeln die erhaltene Zahl entsprechend in einen Wochentag um.

Ein paar Beispiele

Die erste Mondlandung war am 21. Juli 1969. Hier rechnen wir 21+6+0+69+17=113\;. Wir können 112~=~16~\cdot~7 abziehen und erhalten 1. Also war die erste Mondlandung an einem Montag.

Für Heiligabend im Jahr 2019 rechnen wir 24+5+6+19+4=58\;, also wird das ein Dienstag sein. Wenn man sich erinnert, dass es letztes Jahr ein Montag war, ist das natürlich noch etwas einfacher.

Versuche doch mal die Methode bei deinem Geburtstag selbst anzuwenden.

Abschließend noch ein Tipp, um die Zahlen etwas kleiner zu machen und den Rechenaufwand zu verringern. Die Zahl 28 ist sowohl durch 4 als auch durch 7 teilbar. Wenn wir also von der Jahreszahl 28 abziehen verändert sich die Situation der Schaltjahre nicht und insgesamt ziehen wir vom Endergebnis ein Vielfaches von 7 ab, nämlich 28+7=35 wegen den 7 Schaltjahren. Statt dem Jahr 1969 können wir also auch 1969~-~28~-~28~=~1913 betrachten, wodurch die Zahlen deutlich kleiner werden.

Im nächsten Artikel werden wir uns dann mit Teilbarkeitsregeln beschäftigen.