Menu
CoddyTech

Verschachteltes If - Else

Teil des Abschnitts Grundlagen der C#-Journey von Coddy. Lektion 30 von 70.

Wir können if-else-Anweisungen ineinander verschachteln. Dadurch können wir hierarchische Entscheidungsstrukturen erstellen.

Zum Beispiel:

if (age > 18) {
    if (hasLicense) {
        Console.WriteLine("You can drive");
    } else {
        Console.WriteLine("Get a license first");
    }
} else {
    Console.WriteLine("Too young to drive");
}

Es kann unendlich verschachtelt sein:

if (condition1) {
	if (condition2) {
		if (condition3) {
		    // wenn condition1, condition2 und condition3 wahr sind
		    ...
		}
	}
}

Ohne geschweifte Klammern gehört ein else zum nächstgelegenen darüberstehenden if, das noch kein else hat:

if (age > 18)
    if (hasLicense)
        Console.WriteLine("You can drive");
    else
        Console.WriteLine("Get a license first");

Hier gehört das else zu if (hasLicense), unabhängig von der Einrückung. Verwende geschweifte Klammern, um die Zuordnung eindeutig zu machen.

challenge icon

Aufgabe

Anfänger

Erstelle ein Programm, das prüft, ob jemand mit einer Achterbahn fahren darf. Es gelten folgende Anforderungen:

  • Mindestens 12 Jahre alt
  • Größer als 150 cm
  • Wenn beide Anforderungen erfüllt sind, die Person aber unter 15 ist, braucht sie die Aufsicht eines Erwachsenen

Setze die Variable status für jeden Fall auf genau diesen String:

  • Wenn die Person zu jung ist: Sorry, you're too young
  • Wenn die Person nicht groß genug ist: Sorry, you're not tall enough
  • Wenn die Person unter 15 ist und kein Erwachsener dabei ist: Sorry, you need an adult with you
  • Wenn die Person unter 15 ist und ein Erwachsener dabei ist: You can ride with adult supervision!
  • Wenn die Person mindestens 15 und groß genug ist: You can ride by yourself!

Probier es selbst

using System;

class Program {
    public static void Main(string[] args) {
        int age = int.Parse(Console.ReadLine()); // Ändere diese Zeile nicht
        int height = int.Parse(Console.ReadLine()); // Ändere diese Zeile nicht
        bool hasAdult = bool.Parse(Console.ReadLine()); // Ändere diese Zeile nicht

        string status = "";
        
        // Schreibe deinen Code darunter
        
        
        
        // Ändere nichts unterhalb dieser Zeile
        Console.WriteLine(status);
    }
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Grundlagen

Übe selbstständig: Online-C#-Compiler