E20 Ex 8 - 11

This commit is contained in:
Sebastian Schüler 2025-09-30 16:17:50 +02:00
parent e5ecb8149e
commit 14c0b71e99
5 changed files with 86 additions and 7 deletions

View File

@ -18,8 +18,21 @@ namespace Exercises_C_Sharp.E20_Lists
static List<string> Meth()
{
/*Code START*/
List<string> stringList = [];
return new List<string>();
while (true)
{
Console.WriteLine("Bitte Wert eingeben:");
stringList.Add(Console.ReadLine() ?? "-default-");
Console.WriteLine("Sollen weitere Werte eingegeben werden? Dann bitte Y drücken, ander Taste um abzubrechen:");
if (Console.ReadKey().Key != ConsoleKey.Y)
break;
Console.Clear();
Console.WriteLine();
}
return stringList;
/*Code ENDE*/
}
}

View File

@ -18,8 +18,26 @@ namespace Exercises_C_Sharp.E20_Lists
static List<int> Meth()
{
/*Code START*/
List<int> intList = [];
return new List<int>();
while (true)
{
int userinput;
Console.WriteLine("Bitte Zahl eingeben:");
while (!int.TryParse(Console.ReadLine(), out userinput)) ;
intList.Add(userinput);
Console.WriteLine("Sollen weitere Werte eingegeben werden? Dann bitte Y drücken, ander Taste um abzubrechen:");
if (Console.ReadKey().Key != ConsoleKey.Y)
break;
Console.Clear();
Console.WriteLine();
}
Console.Clear();
Console.WriteLine();
return intList;
/*Code ENDE*/
}
}

View File

@ -17,12 +17,15 @@ namespace Exercises_C_Sharp.E20_Lists
}
//Schreiben Sie eine Methode, die eine Liste von Doubles bekommt. Zusätzlich soll noch ein Wert übergeben werden, der die neue Größe der Liste angibt. Nehmen Sie solange Werte aus der Liste, bis diese übergebene Anzahl erreicht ist. Streichen Sie dabei immer die kleinsten Werte heraus. Änder Sie nicht die Ordnung der übergebenen Liste:
//Schreiben Sie eine Methode, die eine Liste von Doubles bekommt. Zusätzlich soll noch ein Wert übergeben werden, der die neue Größe der Liste angibt. Nehmen Sie solange Werte aus der Liste, bis diese übergebene Anzahl erreicht ist. Streichen Sie dabei immer die kleinsten Werte heraus. Ändern Sie nicht die Ordnung der übergebenen Liste:
static List<double> Meth(List<double> doubleList, int i)
{
/*Code START*/
while (doubleList.Count > i)
doubleList.Remove(doubleList.Min());
return doubleList;
/*Code ENDE*/
}
}

View File

@ -9,17 +9,62 @@ namespace Exercises_C_Sharp.E20_Lists
public static void Start()
{
List<int> intList = new List<int>() {46,45,2,3,-8,15,14,16,35,86,-84,25,78,6,32,-15,99,87, -38, 64, -42};
List<int> intList = new List<int>() { 46, 45, 2, 3, -8, 15, 14, 16, 35, 86, -84, 25, 78, 6, 32, -15, 99, 87, -38, 64, -42, 40 };
//Kontrolle:
Meth(intList);
}
//Schreiben Sie eine Methode, die alle Werte einer Integerliste als String ausgibt. So soll er beispielsweise bei der 1 -> "Eins" ausgeben und bei der 34 -> "Vierunddreißig". Es reicht aus, wenn es für ein und zweistellige Zahlen funktioniert. Schauen Sie auch, dass auch negative Zahlen ausgegeben werden:
static void Meth(List<int> intList)
{
/*Code START*/
foreach (var element in intList)
Console.WriteLine(element + ": " + Show(element));
}
public static string Show(int num)
{
List<string> einerListe = ["Null", "Ein", "Zwei", "Drei", "Vier", "Fünf", "Sechs", "Sieben", "Acht", "Neun"];
List<string> zehnerListe = ["Null", "Zehn", "Zwanzig", "Dreißig", "Vierzig", "Fünfzig", "Sechzig", "Siebzig", "Achtzig", "Neunzig"];
string result = "";
if (num < 0)
{
result = "Minus ";
num *= -1;
//AUCH:
num = Math.Abs(num);
}
int einer = num % 10;
int zehner = num / 10;
//Sonderfall: 1
if (num == 1)
return result + "Eins";
//Einer
if (zehner == 0)
return result + einerListe[einer];
//Zehner
if (einer == 0)
return result + zehnerListe[zehner];
//Elf
if (num == 11)
return result + "Elf";
//Zwölf
if (num == 12)
return result + "Zwölf";
//Siebzehn
if (num == 17)
return result + "Siebzehn";
//Einstellig
if (num < 20)
return result + einerListe[einer] + zehnerListe[zehner].ToLower();
//Standardfall
return result + einerListe[einer] + "und" + zehnerListe[zehner].ToLower();
/*Code ENDE*/
}

View File

@ -1,2 +1,2 @@
4
17
10
19