Break
Teil des Abschnitts Grundlagen der Ruby-Journey von Coddy. Lektion 41 von 88.
Manchmal musst du eine Schleife vorzeitig verlassen, bevor sie auf natürliche Weise endet. Mit dem Schlüsselwort break kannst du eine Schleife sofort beenden und mit dem Code danach fortfahren.
Stell dir vor, du suchst nach einer bestimmten Zahl. Sobald du sie gefunden hast, gibt es keinen Grund mehr, den Rest weiter zu überprüfen:
for i in 1..10
if i == 5
puts "Found it!"
break
end
puts i
end
puts "Loop ended"Dies gibt 1, 2, 3, 4, dann "Found it!" und schließlich "Loop ended" aus. Wenn i 5 erreicht, wird break ausgeführt und die Schleife stoppt sofort. Die Zahlen 6 bis 10 werden nie verarbeitet.
Das Schlüsselwort break funktioniert mit jeder Art von Schleife. Hier ist ein Beispiel mit einer while-Schleife:
count = 0
while true
count += 1
if count > 3
break
end
puts count
endDies gibt 1, 2, 3 aus. Obwohl die Bedingung true ist (was normalerweise zu einer Endlosschleife führen würde), beendet break die Schleife, wenn count größer als 3 ist.
Aufgabe
EinfachLies zwei Ganzzahlen aus der Eingabe ein:
- Ein
limit, das die obere Grenze eines bei 1 beginnenden Bereichs darstellt - Eine
target-Zahl, nach der gesucht werden soll
Durchlaufe die Zahlen von 1 bis limit. Gib jede Zahl in einer eigenen Zeile aus. Wenn du target erreichst, gib statt der Zahl Found! aus und beende die Schleife sofort mit break.
Wenn sich das Ziel innerhalb des Bereichs befindet, sollte die Schleife vorzeitig angehalten werden. Wenn das Ziel größer als das Limit ist, werden alle Zahlen von 1 bis zum Limit ausgegeben.
Wenn die Eingaben beispielsweise 10 und 4 lauten, sollte die Ausgabe wie folgt aussehen:
1
2
3
Found!Wenn die Eingaben 5 und 8 lauten, sollte die Ausgabe wie folgt aussehen:
1
2
3
4
5Probier es selbst
# Eingabe einlesen
limit = gets.to_i
target = gets.to_i
# TODO: Schreibe deinen Code unten
# Durchlaufe die Zahlen von 1 bis limit
# Gib jede Zahl in einer eigenen Zeile aus
# Wenn du target erreichst, gib den genauen Text aus der Aufgabenstellung aus und beende die SchleifeDiese 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