E25 Ex1 - 9

This commit is contained in:
Sebastian Schüler 2025-10-28 15:38:35 +01:00
parent bc244dfd42
commit ff37b0bc2d
10 changed files with 104 additions and 21 deletions

View File

@ -11,13 +11,13 @@ namespace Exercises_C_Sharp.E25_Tuple
public static void Start()
{
//Code START
Meth("Hans", 35);
Meth(("Hans", 35));
//Code ENDE
}
static void Meth(/*CODE START*/string name, int age/*CODE ENDE*/)
static void Meth(/*CODE START*/(string name, int age) v/*CODE ENDE*/)
{
Console.WriteLine("{0} ist {1} Jahre alt.", name, age);
Console.WriteLine("{0} ist {1} Jahre alt.", v.name, v.age);
}
}
}

View File

@ -6,14 +6,14 @@ namespace Exercises_C_Sharp.E25_Tuple
{
class Exercise_2
{
//Ändern Sie die Werte in dem Tuple 'tup', sodass die Werte "Breite2 und 12.9 darin stehen.
//Ändern Sie die Werte in dem Tuple 'tup', sodass die Werte "Breite" und 12.9 darin stehen.
public static void Start()
{
Tuple<string, double> tup = new Tuple<string, double>("Länge", 12.54);
//Code START
tup = new("Breite", 12.9);
//Code ENDE

View File

@ -11,7 +11,7 @@ namespace Exercises_C_Sharp.E25_Tuple
public static void Start()
{
//Code START
dynamic tup = -1;
(string, int, string) tup = ("Mt. Everest", 8849, "Himalaya");
//Code ENDE

View File

@ -14,7 +14,7 @@ namespace Exercises_C_Sharp.E25_Tuple
Console.WriteLine("Das Wort {0} hat {1} den Buchstaben {2} enthalten.", element.Item1, element.Item2, element.Item3);
}
static /*Code START*/dynamic/*Code ENDE*/ Meth()
static /*Code START*/(string, int, char)/*Code ENDE*/ Meth()
{
string s = Console.ReadLine() ?? string.Empty;
int res = 0;
@ -23,7 +23,7 @@ namespace Exercises_C_Sharp.E25_Tuple
res++;
//Code START
return s + res;
return (s, res, 'A');
//Code ENDE
}

View File

@ -9,7 +9,9 @@ namespace Exercises_C_Sharp.E25_Tuple
//Erstellen Sie eine Liste von Tupeln. Sorgen Sie dafür, dass die Liste mit der unteren Methode gefüllt wird. Geben Sie zum Schluss die Elemente aus.
//Code START
static dynamic tupleList = -1;
static List<(string,int)> tupleList = [];
//static List<(string,int)> tupleList = new();
//static List<(string,int)> tupleList = new List<(string, int)>();
//Code ENDE
public static void Start()
{
@ -27,16 +29,26 @@ namespace Exercises_C_Sharp.E25_Tuple
foreach(var element in tupleList)
{
//Code START
Console.WriteLine("--------------");
Console.WriteLine("String: " + element.Item1);
Console.WriteLine("Integer: " + element.Item2);
//Code ENDE
}
}
//Diese Methode soll den Nutzer nach einen String und einen int fragen und diese kombination dann in einem Tuple zurück geben. Sorgen Sie dafür, dass der Nutzer valide Werte eingibt.
static /*Code START*/ dynamic /*Code ENDE*/ GetStringAndIntFromUser()
static /*Code START*/ (string, int) /*Code ENDE*/ GetStringAndIntFromUser()
{
//Code START
return -1;
Console.WriteLine("Bitte geben Sie einen String ein:");
string s = Console.ReadLine() ?? "";
while (string.IsNullOrWhiteSpace(s))
s = Console.ReadLine() ?? "";
Console.WriteLine("Bitte geben Sie einen validen Integer ein:");
int a;
while (!int.TryParse(Console.ReadLine(), out a)) ;
return (s, a);
//Code ENDE
}

View File

@ -9,7 +9,7 @@ namespace Exercises_C_Sharp.E25_Tuple
//Sorgen Sie dafür, dass 7 und 345 ausgegeben wird:
//Code START
static dynamic tupList = -1;
static List<(int, int, int)> tupList = [(345,0,0), (0,0,0), (0,0,0), (0,0,0), (0,0,0), (0,0,0), (0,0,0)];
//Code ENDE
public static void Start()
{

View File

@ -11,13 +11,13 @@ namespace Exercises_C_Sharp.E25_Tuple
public static void Start()
{
//Code START
dynamic element = -1;
(string, int) element = ("Etnemeleratnemel", 0);
//Code ENDE
Meth(element);
}
static void Meth(dynamic tup)
static void Meth((string, int) tup)
{
int temp = tup.Item2;
while(tup.Item1.Length <= temp || temp < 0)

View File

@ -10,7 +10,15 @@ namespace Exercises_C_Sharp.E25_Tuple
public static void Start()
{
//Code START
dynamic element = -1;
List<string> element = [];
while(true)
{
Console.WriteLine("Bitte nächsten Wert eingeben, leer für Abbruch:");
string? s = Console.ReadLine();
if (string.IsNullOrWhiteSpace(s)) break;
element.Add(s);
}
//Code ENDE
foreach(var item in Meth(element))
{
@ -21,7 +29,7 @@ namespace Exercises_C_Sharp.E25_Tuple
//Achten Sie auf die deutsche Grammatik!
//Code START
Console.WriteLine(item.Item1 + " -> " + item.Item2 + " Selbstlaut" + (item.Item2 != 1 ? "e" : ""));
//Code ENDE
}
@ -30,7 +38,17 @@ namespace Exercises_C_Sharp.E25_Tuple
static List<Tuple<string,int>> Meth(List<string> stringList)
{
//Code START
dynamic returnList = -1;
List<Tuple<string, int>> returnList = [];
List<char> chars = ['a', 'A', 'E', 'e', 'i', 'I', 'o', 'O', 'u', 'U'];
foreach(var element in stringList)
{
int i = 0;
foreach(var item in element)
if (chars.Contains(item))
i++;
returnList.Add(new(element, i));
}
//Code ENDE
return returnList;

View File

@ -12,7 +12,32 @@ namespace Exercises_C_Sharp.E25_Tuple
{
//Starten Sie hier und füllen Sie die Liste 'Kochbuch' mit mindesten drei Rezepten
//Code START
Kochbuch = [
new(
"Zwiebelsuppe",
[
new("Wasser", 500),
new("Zwiebeln", 3),
new("Suppenpulver", 30),
]
),
new(
"Kartoffelsuppe",
[
new("Wasser", 500),
new("Kartoffeln", 8),
new("Suppenpulver", 30),
]
),
new(
"Lauchsuppe",
[
new("Wasser", 500),
new("Lauch", 4),
new("Suppenpulver", 30),
]
),
];
//Code ENDE
Console.WriteLine("------ Gefülltes Kochbuch -----");
@ -43,14 +68,42 @@ namespace Exercises_C_Sharp.E25_Tuple
static void DeleteElementFromKochbuch()
{
//Code START
for (int i = 0; i < Kochbuch.Count; i++)
Console.WriteLine(i + ".) " + Kochbuch[i].Item1);
int k = 0;
Console.WriteLine("Bitte Index des zu löschenden Rezepts eingeben:");
while (!int.TryParse(Console.ReadLine(), out k) || k < 0 || k >= Kochbuch.Count) ;
Kochbuch.RemoveAt(k);
//Code ENDE
}
//In dieser Methode soll der Anwender ein Rezept hinzufügen können
static void AddNewToKochbuch()
{
//Code START
List<Tuple<string, double>> zutaten = [];
string rezeptnamen;
Console.WriteLine("Bitte geben Sie einen Rezeptnamen ein:");
rezeptnamen = Console.ReadLine() ?? "(default)";
while (true)
{
Console.WriteLine("Bitte Zutat eingeben:");
string zutat = Console.ReadLine() ?? "(default)";
Console.WriteLine("Bitte Menge eingeben:");
double d;
while (!double.TryParse(Console.ReadLine(), out d)) ;
zutaten.Add(new(zutat, d));
Console.WriteLine("Sind alle Zutaten eingegeben, dann Y");
if (Console.ReadKey().Key == ConsoleKey.Y) break;
}
Kochbuch.Add(new(rezeptnamen, zutaten));
//Code ENDE
}
}

View File

@ -1,2 +1,2 @@
4
21
6
24