Menu
CoddyTech

Verschachteltes If - Else

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

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 Achterbahn fahren darf. Die Anforderungen sind:

  • 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 diese Zeichenfolge:

  • Wenn die Person zu jung ist: Sorry, you're too young
  • Wenn sie nicht groß genug ist: Sorry, you're not tall enough
  • Wenn sie unter 15 ist und kein Erwachsener dabei ist: Sorry, you need an adult with you
  • Wenn sie unter 15 ist und ein Erwachsener dabei ist: You can ride with adult supervision!
  • Wenn sie 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 unten
        
        
        
        // Ä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