C# :: Aufgabe #300 :: Lösung #4
4 Lösungen
#300
Welcher Tag ist morgen?
Anfänger - C#
von DragStar
- 06.04.2020 um 08:30 Uhr
Verfassen Sie ein Programm, welches nach Eingabe von Tag, Monat und Jahr das Datum des nächsten Tages ausgibt.
Es sollen Monats- und Jahreswechsel, sowie Schaltjahre berücksichtigt werden.
Es sollen Monats- und Jahreswechsel, sowie Schaltjahre berücksichtigt werden.
#4
von JKooP (18090 Punkte)
- 13.11.2020 um 16:27 Uhr
NET 5.x; C# 9.x
Top-Level-Programm: ohne "namespace" und "class Program"
C#-Code
Top-Level-Programm: ohne "namespace" und "class Program"
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
// Mögliche Eingaben durch Benutzer -> Hier vereinfacht durch Liste dargestellt:
var lst = new List<string>()
{
"9.1.20", // 09.01.2020
"18718", // 17.07.2018
"12/12/17", // 12.12.2017
"4-4-66", // 04.04.1966
"1111", // 01.01.2011
"29219" // 01.01.2011 -> Fehler 01.01.0001
};
// Ausgabe
lst.Select(x => GetDates(x)).ToList().ForEach(x => Console.WriteLine($"Heute: {x.today.ToShortDateString()} -> Morgen: {x.tomorrow.ToShortDateString()}"));
// String -> Datum
static (DateTime today, DateTime tomorrow) GetDates(string s)
{
var r = new Regex(@"(\d{1,2})\W*(\d{1,2})\W*(\d{2,4})").Match(s);
_ = DateTime.TryParse($"{r.Groups[1]}.{r.Groups[2]}.{r.Groups[3]}", out var d);
return (d, d.AddDays(1));
}
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
