E28 Ex 1+2 (nicht fertig!)+3

This commit is contained in:
sebi 2025-04-29 16:58:43 +02:00
parent 954d9138d0
commit 062c3303b8
3 changed files with 123 additions and 7 deletions

View File

@ -10,7 +10,7 @@ namespace Exercises_C_Sharp.E28_Classes
{
//Erstellen Sie die Klasse Funny, sodass "Hallo, das ist super!" auf der Konsole ausgegeben wird.
//Code START
dynamic funnyClass = -1;
Funny funnyClass = new();
//Code ENDE
Console.WriteLine(funnyClass.Value1 + funnyClass.Value2 + funnyClass.Value3 + funnyClass.Value4);

View File

@ -11,7 +11,7 @@ namespace Exercises_C_Sharp.E28_Classes
List<Lists> listList = new();
//Erstellen Sie fünf neue Instanzen der Klasse Lists und fügen Sie diese der oberen Liste hinzu.
//Code START
listList = [new(), new(), new(), new(), new()];
//Code ENDE
foreach(var element in listList)
@ -22,6 +22,74 @@ namespace Exercises_C_Sharp.E28_Classes
while(true)
{
//Code START
string userinput = Console.ReadLine() ?? string.Empty;
if(int.TryParse(userinput, out int userint))
{
foreach(var element in listList)
{
for(int i = 0; i < element.IntegerList.Count; i++)
{
if(element.IntegerList[i] == userint)
{
if(i == 0)
{
Console.WriteLine("Davor: " + element.IntegerList.Last());
Console.WriteLine("Danach: " + element.IntegerList[i+1]);
}
else if(i == element.IntegerList.Length - 1)
{
Console.WriteLine("Davor: " + element.IntegerList[i-1]);
Console.WriteLine("Danach: " + element.IntegerList.First());
}
else
{
Console.WriteLine("Davor: " + element.IntegerList[i-1]);
Console.WriteLine("Danach: " + element.IntegerList[i+1]);
}
}
}
}
}
else if(decimal.TryParse(userinput, out decimal userdecimal))
{
foreach(var element in listList)
{
for(int i = 0; i < element.DecimalList.Count; i++)
{
if(element.DecimalList[i] == userdecimal)
{
//DRINNEN
}
}
}
}
else if(userinput.Length == 1)
{
foreach(var element in listList)
{
for(int i = 0; i < element.CharList.Count; i++)
{
if(element.CharList[i] == userinput[0])
{
//DRINNEN
}
}
}
}
else
{
foreach(var element in listList)
{
for(int i = 0; i < element.StringList.Count; i++)
{
if(element.StringList[i] == userinput)
{
//DRINNEN
}
}
}
}
//Code ENDE
}

View File

@ -10,36 +10,84 @@ namespace Exercises_C_Sharp.E28_Classes
{
//Erstellen Sie eine Liste von Ausweisen (IDs)
//Code START
List<ID> Ausweise = new();
//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.
//Code START
int counter = 0;
while(true)
{
ID tempID = UserCreateID();
bool b = true;
for(int i = 0; i < Ausweise.Count; i++)
{
if(tempID.Birth > Ausweise[i].Birth)
{
Ausweise.Insert(i, tempID);
b = false;
break;
}
}
if(b) Ausweise.Add(tempID);
if(counter <= 5)
counter++;
if(counter >= 5)
{
Console.WriteLine("Willst Du einen weiteren Ausweis erstellen. Dann schreibe ein Y:");
if(Console.ReadKey().Key != ConsoleKey.Y)
break;
}
}
//Code ENDE
//Geben Sie zum Schluss alle Ausweise aus. Nutzen Sie dafür die Methode ShowIDs().
//Code Start
//ShowIDs();
ShowIDs(Ausweise);
//Code ENDE
}
//"Einfache" Weg Sortierung
Ausweise.Sort((k, l) => k.Birth.CompareTo(l.Birth));
//Geben Sie in diser Methode alle Ausweise optisch ansprechend auf der Konsole aus.
static void ShowIDs(List<ID> idList)
{
//Code START
foreach(var element in idList)
{
Console.WriteLine("---------------------");
Console.WriteLine("Number: " + element.IDNumber);
Console.WriteLine("Vornamen: " + element.Givenname);
Console.WriteLine("Nachnamen: " + element.Surname);
Console.WriteLine("Geburtsdatum: " + element.Birth.ToString("dd.MM.yyyy"));
Console.WriteLine("---------------------");
}
//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.
//Code START
static int lastID = 10000;
//Code ENDE
static ID UserCreateID()
{
//Code START
return new ID();
ID tempID = new();
tempID.IDNumber = lastID++;
Console.WriteLine("Bitte Vorname angeben:");
tempID.Givenname = Console.ReadLine();
Console.WriteLine("Bitte Nachname angeben:");
tempID.Surname = Console.ReadLine();
Console.WriteLine("Bitte Geburtsdatum angeben:");
tempID.Birth = Convert.ToDateTime(Console.ReadLine());
return tempID;
//Code ENDE
}
@ -52,7 +100,7 @@ namespace Exercises_C_Sharp.E28_Classes
class ID
{
public int IDNumber = -1;
public string? Prename = null;
public string? Surname = null;
public string? Givenname = null;
public DateTime Birth = DateTime.MinValue;
}