This commit is contained in:
sebi 2025-03-17 17:10:47 +01:00
parent 1ff031cc69
commit 1ba5f102f5
2 changed files with 60 additions and 7 deletions

View File

@ -10,17 +10,44 @@ namespace Exercises_C_Sharp.E28_Classes
{ {
//Erstellen Sie eine Liste von Ausweisen (IDs) //Erstellen Sie eine Liste von Ausweisen (IDs)
//Code START //Code START
List<ID> IdList = [];
//Code ENDE //Code ENDE
//Der Nutzer soll nun beliebig viele Ausweise erstellen können. Achten Sie darauf, dass der Nutzer mindestens 5 Ausweise erstellen muss. Verwenden Sie die Methode UserCreateID(). Speichern Sie die Ausweise in die oben erstellte Liste, nach dem Geburtsdatum sortiert. //Der Nutzer soll nun beliebig viele Ausweise erstellen können. Achten Sie darauf, dass der Nutzer mindestens 5 Ausweise erstellen muss. Verwenden Sie die Methode UserCreateID(). Speichern Sie die Ausweise in die oben erstellte Liste, nach dem Geburtsdatum sortiert.
//Code START //Code START
int i = 0;
while(true)
{
var val = UserCreateID();
bool b = true;
for(int k = 0; k < IdList.Count; k++)
if(IdList[k].Birth > val.Birth)
{
IdList.Insert(k, val);
b = false;
break;
}
if(b)
IdList.Add(val);
i++;
if(i >= 5)
{
Console.WriteLine("Möchten Sie einen weiteren Ausweis erstellen? Dann bitte Y drücken");
if(Console.ReadKey().Key != ConsoleKey.Y) break;
}
}
//"Leichte" Möglichkeit zum Sortieren
IdList.Sort((x,y) => x.Birth.CompareTo(y.Birth));
//Code ENDE //Code ENDE
//Geben Sie zum Schluss alle Ausweise aus. Nutzen Sie dafür die Methode ShowIDs(). //Geben Sie zum Schluss alle Ausweise aus. Nutzen Sie dafür die Methode ShowIDs().
//Code Start //Code Start
//ShowIDs(); ShowIDs(IdList);
//Code ENDE //Code ENDE
} }
@ -29,17 +56,43 @@ namespace Exercises_C_Sharp.E28_Classes
{ {
//Code START //Code START
foreach(var element in idList)
{
Console.WriteLine();
Console.WriteLine("****************************");
Console.WriteLine("** AUSWEIS ID: {0} **", element.IDNumber);
Console.WriteLine("****************************");
Console.WriteLine("** Vorname: " + element.Givenname);
Console.WriteLine("****************************");
Console.WriteLine("** Nachname: " + element.Surname);
Console.WriteLine("****************************");
Console.WriteLine("** Geburtsdatum: " + element.Birth.ToString("dd.MM.yyyy"));
Console.WriteLine("****************************");
Console.WriteLine();
}
//Code ENDE //Code ENDE
} }
//Sorgen Sie dafür, dass der Anwender hier einen validen Ausweis erstellen kann. Setzen Sie die IDNumber selber. Achten Sie darauf, dass eine IDNumber mindesten 5 Zahlen beinhaltet und eindeutig sein muss. //Sorgen Sie dafür, dass der Anwender hier einen validen Ausweis erstellen kann. Setzen Sie die IDNumber selber. Achten Sie darauf, dass eine IDNumber mindesten 5 Zahlen beinhaltet und eindeutig sein muss.
//Code START //Code START
static int _nextID = 10000;
static int NextID {get {return _nextID++;}}
//Code ENDE //Code ENDE
static ID UserCreateID() static ID UserCreateID()
{ {
//Code START //Code START
return new ID(); var id = new ID() {IDNumber = NextID};
Console.WriteLine("Bitte Vorname angeben:");
id.Givenname = Console.ReadLine();
Console.WriteLine("Bitte Nachname angeben:");
id.Surname = Console.ReadLine();
Console.WriteLine("Bitte Geburtsdatum angeben:");
id.Birth = Convert.ToDateTime(Console.ReadLine());
return id;
//Code ENDE //Code ENDE
} }
@ -52,7 +105,7 @@ namespace Exercises_C_Sharp.E28_Classes
class ID class ID
{ {
public int IDNumber = -1; public int IDNumber = -1;
public string? Prename = null; public string? Surname = null;
public string? Givenname = null; public string? Givenname = null;
public DateTime Birth = DateTime.MinValue; public DateTime Birth = DateTime.MinValue;
} }

View File

@ -1,2 +1,2 @@
5 2
17 27