Aufgabe
Schreiben Sie ein Programm oder eine Funktion, die einen Wochentagsnamen eines Datums berechnet, das ein Benutzer eingibt.
Input-Output
Die Eingabe ist eine Zeichenfolge YYYYMMDD.
Beispiel für Eingabewerte:
20110617: 17. Juni 2011 19040229: 29. Februar 1904 06661225: 25. Dezember 666 00000101: 1. Januar 0 99991231: 31. Dezember 9999
Sie können davon ausgehen, dass alle Eingaben gültig sind. Beachten Sie, dass das Jahr Null gültig ist.
Die Ausgabe ist eine Ganzzahl zwischen 0und 6. Jede Ganzzahl steht für einen Wochentagsnamen. Sie können frei entscheiden, welche Ganzzahl einen Wochentagsnamen wie diesen darstellt
0: Montag 1: Dienstag 2: Mittwoch ... 6: Sonntag
(in der Reihenfolge) oder dieser
0: Montag 1: Mittwoch 2: Sonntag ... 6: Samstag
(nicht in der Reihenfolge).
Testfälle
Eingabe Wochentag Ausgabe ([0..6 -> Montag..Sonntag] wird in diesem Beispiel verwendet.) 20110617 Freitag 4 19500101 Sonntag 6 22220202 Samstag 5 19000228 Mittwoch 2 19000301 Donnerstag 3 19450815 Mittwoch 2 19040229 Montag 0 19040301 Dienstag 1 17760704 Donnerstag 3 20000228 Montag 0 20000229 Dienstag 1 20000301 Mittwoch 2 20121223 Sonntag 6 00000401 Samstag 5 66660606 Mittwoch 2 59161021 Samstag 5
Beschränkung
Sie dürfen nicht nutzen jede Art von Funktion / Klasse / ..., die Zeitstempel oder das Datum beziehen, wie DateKlasse in Java/ JavaScript/ ActionScriptoder getdateFunktion in PHP.
Sie sollten den Gregorianischen Kalender verwenden , der jetzt von vielen Menschen verwendet wird.
Natürlich gewinnt der kürzeste Code. Wenn zwei Codes die gleiche Länge haben, gewinnt der Code mit den höchsten Stimmen.
(Fällig: Wenn es mehr als 5 Codes gibt, die mehr als (oder gleiche) +1Stimmen haben.)
echo 4.