E32 E 7 - 9
This commit is contained in:
parent
6bbb37a435
commit
baa00b6df9
@ -11,36 +11,23 @@ namespace Exercises_C_Sharp.E32_Exceptions
|
||||
int i;
|
||||
string s;
|
||||
char c;
|
||||
while(true)
|
||||
{
|
||||
try
|
||||
{
|
||||
|
||||
|
||||
Console.WriteLine("Bitte Zahl eingeben:");
|
||||
i = Convert.ToInt32(Console.ReadLine() ?? "");
|
||||
}
|
||||
catch
|
||||
{
|
||||
while(!int.TryParse(Console.ReadLine(), out i))
|
||||
Console.WriteLine("Falsche Zahl :(");
|
||||
continue;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
Console.WriteLine("Bitte String eingeben:");
|
||||
while(true)
|
||||
{
|
||||
try
|
||||
{
|
||||
Console.WriteLine("Bitte String eingeben:");
|
||||
s = Console.ReadLine() ?? "";
|
||||
c = s[i];
|
||||
}
|
||||
catch
|
||||
{
|
||||
Console.WriteLine("Leider ein Fehler. Bitte String nochmal eingeben...");
|
||||
continue;
|
||||
}
|
||||
if(s.Length > i)
|
||||
break;
|
||||
Console.WriteLine("Leider ein Fehler. Bitte String nochmal eingeben...");
|
||||
}
|
||||
|
||||
c = s[i];
|
||||
|
||||
Console.WriteLine("Der extrahierte Char ist " + c);
|
||||
//Code ENDE
|
||||
}
|
||||
|
@ -11,6 +11,14 @@ namespace Exercises_C_Sharp.E32_Exceptions
|
||||
//Rufen Sie die Methode Meth auf und fangen Sie alle Fehler mit einem catch-Block auf. Geben Sie dann die Exception und deren Nachricht auf der Konsole aus.
|
||||
|
||||
//Code START
|
||||
try
|
||||
{
|
||||
Meth();
|
||||
}
|
||||
catch(Exception ex)
|
||||
{
|
||||
Console.WriteLine(ex.ToString());
|
||||
}
|
||||
|
||||
//Code ENDE
|
||||
}
|
||||
|
@ -10,18 +10,42 @@ namespace Exercises_C_Sharp.E32_Exceptions
|
||||
|
||||
//Code START
|
||||
|
||||
while(true)
|
||||
{
|
||||
try
|
||||
{
|
||||
Console.WriteLine("Bitte geben Sie einen Namen ein:");
|
||||
Thing t = new(Console.ReadLine() ?? "");
|
||||
break;
|
||||
}
|
||||
catch(Exception ex)
|
||||
{
|
||||
Console.WriteLine("Es ist ein Fehler aufgetreten:");
|
||||
Console.WriteLine(ex.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
//Code ENDE
|
||||
}
|
||||
}
|
||||
class Thing
|
||||
{
|
||||
private string Name = string.Empty;
|
||||
private string name = string.Empty;
|
||||
public Thing(string name)
|
||||
{
|
||||
//1. Diese Klasse representiert irgendeine Sache. Dieser Sache muss im Konstruktor ein Name übergeben werden. Für den Namen gilt: Er muss mindestens 5 Zeichen besitzen, keiner der Zeichen darf eine Zahl sein und natürlich darf der Übergabewert auch nicht null sein. Sollte ein falscher Wert übergeben werden, so schmeißen Sie eine jeweilige Exception mit einer Erläuterung, um was es sich genau handelt. Sollte alles passen, speichern Sie den Wert in die Variable 'Name'.
|
||||
|
||||
//Code START
|
||||
if(name == null) throw new ArgumentNullException("Leider war der Name NULL");
|
||||
if(name.Length < 5) throw new FormatException("Leider war die länge von 5 nicht erreicht.");
|
||||
|
||||
if(name.Any(k => char.IsDigit(k))) throw new Exception("Leider war eine Stelle eine Zahl");
|
||||
|
||||
foreach(var element in name)
|
||||
if(int.TryParse(element.ToString(), out _))
|
||||
throw new Exception("Leider war eine Stelle eine Zahl");
|
||||
|
||||
this.name = name;
|
||||
//Code ENDE
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user