Menu
Coddy logo textTech

While-Schleife

Teil des Abschnitts Grundlagen der Ruby-Journey von Coddy — Lektion 40 von 88.

Die for-Schleife funktioniert hervorragend, wenn man genau weiß, wie oft man etwas wiederholen möchte. Aber was ist, wenn man so lange weiterschleifen möchte, bis sich eine bestimmte Bedingung ändert? Hier kommt die while-Schleife ins Spiel.

Eine while-Schleife läuft weiter, solange ihre Bedingung wahr bleibt:

count = 1
while count <= 3
  puts count
  count += 1
end

Dies gibt 1, 2 und 3 aus. Die Schleife prüft die Bedingung vor jeder Iteration. Sobald count zu 4 wird, ist die Bedingung count <= 3 falsch und die Schleife stoppt.

Der entscheidende Unterschied zu einer for-Schleife besteht darin, dass Sie steuern, wann die Schleife endet, indem Sie eine Variable innerhalb der Schleife ändern. Wenn Sie vergessen, die Variable zu aktualisieren, läuft die Schleife ewig! Hier ist ein Countdown-Beispiel:

num = 5
while num > 0
  puts num
  num -= 1
end
puts "Done!"

Dies zählt von 5 bis 1 rückwärts und gibt dann „Done!“ aus, nachdem die Schleife beendet ist. Die while-Schleife ist besonders nützlich, wenn man im Voraus nicht weiß, wie viele Iterationen man benötigen wird.

challenge icon

Aufgabe

Einfach

Lies eine Zahl n von der Eingabe. Verwende eine while-Schleife, um alle Zahlen von n bis 1 auszugeben, jeweils in einer eigenen Zeile. Nachdem der Countdown beendet ist, gib Blastoff! in einer neuen Zeile aus.

Die Eingabe ist eine einzelne Ganzzahl, die die Startzahl für den Countdown darstellt.

Wenn die Eingabe zum Beispiel 5 ist, sollte die Ausgabe wie folgt aussehen:

5
4
3
2
1
Blastoff!

Spickzettel

Eine while-Schleife läuft so lange weiter, wie ihre Bedingung wahr bleibt:

count = 1
while count <= 3
  puts count
  count += 1
end

Die Schleife prüft die Bedingung vor jeder Iteration. Sie müssen die Variable innerhalb der Schleife aktualisieren, um die Bedingung schließlich falsch werden zu lassen, andernfalls läuft die Schleife ewig.

Beispiel-Countdown:

num = 5
while num > 0
  puts num
  num -= 1
end
puts "Done!"

Verwenden Sie while-Schleifen, wenn Sie nicht im Voraus wissen, wie viele Iterationen Sie benötigen, oder wenn Sie eine Schleife ausführen möchten, bis sich eine Bedingung ändert.

Probier es selbst

# Lies die Startzahl ein
n = gets.chomp.to_i

# TODO: Schreibe deinen Code unten
# Verwende eine while-Schleife, um Zahlen von n bis 1 auszugeben
# Gib dann "Blastoff!" aus
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