Themenbereiche Themenbereiche Profile Hilfe/Anleitungen Help    
Recent Posts Last 1|3|7 Days Suche Suche Tree Tree View  

Wochentage

ZahlReich - Mathematik Hausaufgabenhilfe » ---- Archiv: Universitäts-Niveau » Zahlentheorie » Wochentage « Zurück Vor »

Autor Beitrag
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Kerstin Ackerschott (kerstin)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Neues Mitglied
Benutzername: kerstin

Nummer des Beitrags: 4
Registriert: 06-2000
Veröffentlicht am Samstag, den 27. April, 2002 - 08:45:   Beitrag drucken

Hallo, ich brauche dringend Hilfe bei folgender Aufgabe:

1) Welcher Wochentag war der 15. Mai 1596?

2) Man gebe die Formel für den Wochentag des Datums n.m. im Jahre 100c+d an !

Brauch dringend eure Hilfe, ich verstehe die Aufgabe nämlich kein bisschen!
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Martin (martin243)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Senior Mitglied
Benutzername: martin243

Nummer des Beitrags: 593
Registriert: 02-2001
Veröffentlicht am Samstag, den 27. April, 2002 - 14:39:   Beitrag drucken

Hi Kerstin!

zu Frage 1:

Es war meines Wissens ein Mittwoch.

Auf Frage 2 werde ich bald zurückkommen
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Martin (martin243)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Senior Mitglied
Benutzername: martin243

Nummer des Beitrags: 594
Registriert: 02-2001
Veröffentlicht am Samstag, den 27. April, 2002 - 16:59:   Beitrag drucken

So, mal schau'n:

Zuallererst müssen wir die Wochentage durch Zahlen ersetzen, um damit rechnen zu können:
0 = Sonntag
1 = Montag
usw.
6 = Samstag


Nun muss man überlegen, was man berücksichtigen muss:

1)
Wir brauchen einen Referenztag, von dem wir den Wochentag kennen, also z.B. den 31. 12. 1499.
Zwar wurde der Gregorianische Kalender erst 1582 (oder so ähnlich) eingeführt, aber in unserer Zeitrechnung soll das der Referenztag sein.
Es wäre demnach ein Sonntag, also 0.

2)
Jetzt stellt sich die Frage:
Wie sieht denn Silvester nächsten Jahres aus? oder: Wie wirkt sich ein Jahr mehr auf den Wochentag aus?

Wir fangen so an:
Ein "normales" Jahr hat 365 Tage. Da uns aber nur die Divisionsreste modulo 7 interessieren, sagen wir stattdessen, dass ein "normales" Jahr 1 Tag hat (365:7 = 52 + Rest 1).
Ein Schaltjahr hat einen Tag mehr, also 2.

Nun wollen wir wissen, wie viele "Modulotage" ein Jahrhundert hat.
Hierbei müssen wir natürlich berücksichtigen, wann Schaltjahre vorkommen, nämlich genau dann, wenn gilt:
d><0 UND 4|d UND c kein Vielfaches von 4
ODER
d=0 UND 4|c.

Also hat ein Jahrhundert (100c - 100c+99) mit c=4z genau 25 Schaltjahre und 75 "normale" Jahre, was zusammen ergibt:
25*2 + 75*1 = 50 + 75 = 125 => 6 "Modulotage"

Ein Jahrhundert (100c - 100c+99) mit c><4z hat dagegen nur 24 Schaltjahre (da 100c kein Schaltjahr ist) und 76 "normale" Jahre, also:
24*2 + 76*1 = 48 + 76 = 124 => 5 "Modulotage"


Um also den Wochentag vom 31. 12. (100c+99) zu berechnen, rechnen wir:
(c-14)*5 + [(c-14+2)/4]*1 <= (Das ist die Gaussklammer, wegen der Jahrhunderte mit 4|c)
Hiervon nun den Divisionsrest durch 7 und wir haben den Tag.

Beispiel:
Wir suchen den Tag: 31. 12. 1999 (c=19)
Rechnung:
(19-14)*5 + [(19-14+2)/4]*1
= 5*5 + [7/4]*1
= 25 + 1*1
= 26
=> 5 also Freitag
Es stimmt, ich habe es mit meinem PC geprüft!


***************

Nun wollen wir aber jedes beliebige Datum berechnen und nicht nur Silvester alle 100 Jahre.
Aber das obige Ergebnis ist wichtig!
Also weiter:
Wir benutzen die obige Formel, um Silvester im Jahr 100(c-1)+99 zu berechnen, so dass wir dann nur noch innerhalb eines Jahrhunderts rechnen müssen.

Der nächste Schritt wird sein, Silvester des Vorjahres zu berechnen:
Wir wissen: Je nach Beschaffenheit von c müssen wir ein Schaltjahr mehr oder weniger berechnen.
In einem Jahr mit c nicht teilbar durch 4 haben wir:
1 + d*1 + [d/4]*1 "Modulotage" (1 + .. wegen d=0 als 1. Jahr)
Dagegen haben wir in Jahren mit 4|c (16.., 20..):
1 + d*1 + [d/4]*1 + 1.
D.h. wir müssen hier eine Bedingung einbauen:
1 + d*1 + [d/4]*1 (+1, falls 4|c)

Zusammen mit obiger Formel erhalten wir für Silvester eines beliebigen Jahres 100c+d:
((c-1)-14)*5 + [((c-1)-14+2)/4]*1 + 1 + d*1 + [d/4]*1 (+1, falls 4|c)
= (c-15)*5 + [((c-13)/4]*1 + 1 + d*1 + [d/4]*1 (+1, falls 4|c)

Beispiel: Silvester 2002
(20-15)*5 + [((20-13)/4]*1 + 1 + 2*1 + [2/4]*1 (+1, falls 4|20)
= 5*5 + [7/4]*1 + 1 + 2*1 + [2/4]*1 + 1
= 25 + 1*1 + 1 + 2 + 0 + 1
= 30
=> 2 (mod 7), also Dienstag (siehe Kalender!)


***************

Nun der letzte Schritt:
Wir wollen die Tage im laufenden Jahr berechnen.
Da benutzen wir am besten auch nur die Divisionsreste durch 7.
Für das Datum n. m. berechnen wir die Anzahl der Tage der ersten (m-1) Monate und addieren n dazu. Hier gilt:
m=1 => 0
m=2 => 3
m=3 => 3
m=4 => 6
m=5 => 1
m=6 => 4
m=7 => 6
m=8 => 2
m=9 => 5
m=10 => 0
m=11 => 3
m=12 => 5
Da das in einer Formel schlecht unterzubringen ist, bezeichne ich die obige Zuordnung mit fMonat(m).
Sie gilt nur für "normale" Jahre. Für Schaltjahre müssen wir noch für (n>2) 1 dazuaddieren (weil wir uns dann hinter dem Schalttag befinden).
Also beträgt die Anzahl der Tage bis zum heutigen Datum n. m.:
fMonat(m) + n (+1, falls Schaltjahr und n>3)

Alles zusammen ergibt die (mathematisch nicht korrekte) Formel:

(c-15)*5 + [(c-13)/4]*1 + 1 + (d-1)*1 + [(d-1)/4]*1 (+1, falls 4|c) + fMonat(m) + n (+1, falls Schaltjahr und n>2)

= (c-15)*5 + [(c-13)/4]*1 + d*1 + [(d-1)/4]*1 (+1, falls 4|c) + fMonat(m) + n (+1, falls Schaltjahr und n>2)

= (c-15)*5 + [(c-13)/4] + d + [(d-1)/4] (+1, falls 4|c) + fMonat(m) + n (+1, falls Schaltjahr und n>2)



Wir testen das für den heutigen Tag:
n=27, m=4, c=20, d=2:

(20-15)*5 + [(20-13)/4] + 2+ [(2-1)/4] (+1, falls 4|20, ja) + fMonat(4) + 27 (+1, falls Schaltjahr und n>2, nein)

= 5*5 + [7/4] + 2 + [1/4] + 1 + 6 + 27

= 25 + 1 + 2 + 0 + 1 + 6 + 27

= 62

=> 6, also Samstag!!!

Zumindest für das heutige Datum funktioniert es!


Na ja, es ist ja auch eher ein Algorithmus als eine Formel, aber falls mir eine vernünftige Schreibweise einfällt, melde ich mich wieder...
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

WurzelPi
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Unregistrierter Gast
Veröffentlicht am Sonntag, den 28. April, 2002 - 10:28:   Beitrag drucken

Die Wochentagsnummer wird nach der Gaußschen Kalenderformel folgendermaßen berechnet
(t = Tag, m = Monat, j = vierstelliges Jahr, a = zweistelliges Jahr, c = Jahrhundert):
Zuerst wird vom Monat 2 subtrahiert. Wenn m dabei kleiner 1 wird, muss man 12 addieren und statt j das vorige Jahr j–1 verwenden.

Zwischenergebnis z:
z = int(2,6 · m – 0,2) + t + a + int(a / 4) + int(c / 4) – 2 · c

int = größte Zahl, die kleiner oder gleich dem Operanden ist (Dezimalen einfach weglassen, nicht runden)

Die Nummer des Wochentags (0 = Sonntag, 1 = Montag etc.) ergibt sich als Modulowert: z mod 7.

mod ist der Rest bei Division durch 7. Wird der Rest negativ, muss man ein Vielfaches von 7 addieren.
Seitenanfangvoriger Beitragnächster BeitragSeitenende Link zu diesem Beitrag

Kerstin Ackerschott (kerstin)
Suche alle Beiträge dieser Person in dieser Hauptrubrik
Neues Mitglied
Benutzername: kerstin

Nummer des Beitrags: 5
Registriert: 06-2000
Veröffentlicht am Sonntag, den 28. April, 2002 - 15:28:   Beitrag drucken

Vielen Dank für die ausführlichen Erklärungen!!

Gruss Kerstin

Beitrag verfassen
Das Senden ist in diesem Themengebiet nicht unterstützt. Kontaktieren Sie den Diskussions-Moderator für weitere Informationen.

ad

Administration Administration Abmelden Abmelden   Previous Page Previous Page Next Page Next Page