Until-Schleife
Teil des Abschnitts Grundlagen der Ruby-Journey von Coddy. Lektion 45 von 88.
Die until-Schleife ist das Gegenteil der while-Schleife. Anstatt zu laufen, während eine Bedingung wahr ist, läuft sie, bis eine Bedingung wahr wird. Denken Sie daran wie an "mache weiter, bis dies passiert".
count = 1
until count > 3
puts count
count += 1
endDies gibt 1, 2, 3 aus. Die Schleife wird fortgesetzt, solange count > 3 falsch ist. Sobald count 4 wird, ist die Bedingung wahr, und die Schleife stoppt.
Vergleiche dies mit der äquivalenten while-Schleife:
# Diese beiden Schleifen machen dasselbe:
while count <= 3 # laufen, solange dies TRUE ist
until count > 3 # laufen, bis dies TRUE istDie until-Schleife kann Ihren Code lesbarer machen, wenn Sie darauf warten, dass etwas passiert. Hier ist ein Beispiel für einen Countdown:
num = 5
until num == 0
puts num
num -= 1
end
puts "Liftoff!"Dies zählt von 5 bis 1 herunter und gibt dann „Liftoff!“ aus, wenn num 0 erreicht. Wähle until, wenn dadurch deine Absicht klarer wird, insbesondere wenn du darauf wartest, dass eine bestimmte Bedingung eintritt.
Aufgabe
EinfachLies eine Zahl n aus der Eingabe. Verwende eine until-Schleife (loop), um alle Zahlen von 1 bis n auszugeben, jede in einer eigenen Zeile. Gib nach dem Erreichen von n Done! in einer neuen Zeile aus.
Die Schleife should continue, bis der counter n exceeds.
Die Eingabe ist eine einzelne Ganzzahl, die die Zielzahl (target number) darstellt.
Wenn die Eingabe beispielsweise 4 ist, sollte die Ausgabe wie folgt aussehen:
1
2
3
4
Done!Wenn die Eingabe 6 ist, sollte die Ausgabe wie folgt aussehen:
1
2
3
4
5
6
Done!Probier es selbst
# Lese die Zielzahl
n = gets.to_i
# Initialisiere den Zähler
counter = 1
# TODO: Schreibe deinen Code darunter
# Verwende eine until-Schleife, um Zahlen von 1 bis n auszugeben
# Die Schleife sollte fortgesetzt werden, bis counter n überschreitet
# Gib den genauen Text aus den Anweisungen nach der Schleife aus
puts "Done!"Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung – Einfache LogikLogische Operatoren Teil 3Logische Operatoren Teil 47Rechner zum Aufteilen der Rechnung
WillkommensnachrichtBenutzereingaben erfassen10FizzBuzz mit einer Wendung
SpielübersichtDie FizzBuzz-Methode13Arrays für Fortgeschrittene
Array-Slicing mit BereichenArray-Slicing mit IndizesArray-OperatorenInclude?-Methode2Variablen und Datentypen
Zahlen und VariablenString-DatentypBoolean-DatentypSymbol-DatentypDatentypen überprüfenNamenskonventionenWiederholung – Variablen erstellen5Entscheidungsfindung
If-AnweisungIf - ElseRückblick – Einfacher TaschenrechnerVerschachteltes If - ElseUnless-Anweisung8Schleifen
For-Schleife mit BereichenWhile-SchleifeBreakNextRückblick – FakultätTimes-SchleifeUntil-SchleifeVerschachtelte SchleifenRückblick – Dynamische Eingabe3Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische KurzschreibweisenRückblick – Einfache MathematikVergleichsoperatoren6Grundlegende Ein- und Ausgabe
Ausgabe mit putsAusgabe mit print und pAusgabe mit VariablenEingabe mit getsDie chomp-MethodeTypumwandlungWiederholung – AltersrechnerWiederholung – Wahr oder FalschÜbe selbstständig: Online-Ruby-Compiler