Menu
CoddyTech

Verschachteltes If - Else

Teil des Abschnitts Grundlagen der GDScript-Journey von Coddy. Lektion 29 von 92.

Eine if-Anweisung kann innerhalb eines anderen if- oder else-Blocks stehen. Das ist ein verschachteltes if. Beginne mit einem einfachen if/else:

var age := 15
var group := ""
if age >= 18:
	group = "Adult"
else:
	group = "Minor"

Teile die Minderjährigen jetzt mit einem verschachtelten if/else innerhalb des else-Blocks in zwei Gruppen auf:

var age := 15
var group := ""
if age >= 18:
	group = "Adult"
else:
	if age >= 13:
		group = "Teenager"
	else:
		group = "Child"

15 ist nicht mindestens 18, also wird das äußere else ausgeführt. Darin ist 15 >= 13 true, also enthält group den Wert "Teenager".

Ein verschachteltes if kann auch in den if-Block eingefügt werden:

var age := 25
var can_rent_car := false
if age >= 18:
	if age >= 21:
		can_rent_car = true

Das innere if wird nur ausgeführt, wenn der äußere Block, in dem es steht, ausgeführt wird. Jede Verschachtelungsebene fügt einen Tab hinzu.

challenge icon

Aufgabe

Einfach

Entscheide, welche Filme ein Zuschauer ansehen darf. Die Variablen age und with_parent werden in den ersten beiden Zeilen für dich eingelesen (ändere sie nicht).

Verwende ein verschachteltes if/else, um message festzulegen:

  • Wenn age mindestens 18 beträgt: "You can watch any movie"
  • Andernfalls, wenn with_parent true ist: "You can watch PG-13 movies"
  • Andernfalls: "You can only watch G-rated movies"

with_parent ist ein bool, prüfe es also direkt: if with_parent:. Schreibe alle drei Fälle: Die Tests probieren verschiedene Altersangaben mit und ohne Elternteil aus. Zum Beispiel lautet die Ausgabe für das Alter 17 mit einem Elternteil:

You can watch PG-13 movies

Probier es selbst

extends Node

func _ready():
	var age := int(OS.read_string_from_stdin()) # Ändere diese Zeile nicht
	var with_parent := OS.read_string_from_stdin() == "true" # Ändere diese Zeile nicht
	var message := ""
	# Schreibe deinen verschachtelten if - else-Code unten hin

	# Ändere die Zeile darunter nicht
	print(message)
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-GDScript-Compiler