C# :: Aufgabe #31 :: Lösung #9
9 Lösungen

#31
Anzahl Freitag, der 13te über bestimmten Zeitraum
Anfänger - C#
von pocki
- 29.12.2012 um 19:56 Uhr
Schreibe ein Programm welches 2 verschiedene Datum einliest und berechne die Anzahl wie oft in diesem Zeitraum der 13te eines Monats auf einen Freitag fiel und gib diese aus.
Konsolenausgabe:
Startdatum: 01.01.2009
Enddatum: 31.12.2009
13.02.2009
13.03.2009
13.11.2009
Summe: 3
#9

von Chrille (100 Punkte)
- 29.10.2020 um 12:19 Uhr

static void Main(string[] args) { //eingabe Anfangsdatum DateTime anfangsDatum; Console.Write("Startdatum: "); while (!DateTime.TryParse(Console.ReadLine(), out anfangsDatum)) { Console.WriteLine("Fehlerhafte Eingabe, eingabe wiederholen"); Console.Write("Startdatum: "); } //eingabe Enddatum DateTime endDatum; Console.Write("Enddatum: "); while (!(DateTime.TryParse(Console.ReadLine(), out endDatum) && endDatum > anfangsDatum)) { Console.WriteLine("Fehlerhafte Eingabe, eingabe wiederholen"); Console.Write("Enddatum: "); } //Setzten des Tages auf den 13. ggf im nächsten Monat. if (anfangsDatum.Day <=13) { anfangsDatum.AddDays(13-anfangsDatum.Day); } else { anfangsDatum = new DateTime(anfangsDatum.Year, anfangsDatum.Month, 13).AddMonths(1); } // Schleifendurchlauf mit Zählfunktion der übereinstimmung. int fridaysOfNoFuture = 0; for (DateTime i = anfangsDatum; i<endDatum; i=i.AddMonths(1)) // überprüft immer nur den 13. jeden Monats { if (i.DayOfWeek== DayOfWeek.Friday) { fridaysOfNoFuture++; Console.WriteLine("{0:dd/MM/yyyy}", i.Date); } } Console.WriteLine("Summe: "+fridaysOfNoFuture); Console.ReadKey(); }
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1