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
