Verschachtelte If - Else-Anweisungen
Teil des Abschnitts Grundlagen der Ruby-Journey von Coddy — Lektion 24 von 88.
Was ist, wenn Sie mehr als zwei Bedingungen prüfen müssen? Sie können eine if-else-Anweisung in eine andere if-else-Anweisung einfügen. Dies wird als Verschachtelung bezeichnet und ermöglicht es Ihnen, mehrere Entscheidungspunkte zu verarbeiten.
score = 85
if score >= 90
puts "Grade: A"
else
if score >= 80
puts "Grade: B"
else
puts "Grade: C"
end
endRuby prüft die erste Bedingung. Wenn diese falsch ist, wechselt es zum else-Block, in dem ein weiteres if-else wartet. Dies erzeugt eine Kette von Entscheidungen, von denen jede die Möglichkeiten einschränkt.
Ruby bietet eine sauberere Möglichkeit, dies mit elsif zu schreiben, was else und if zu einem Schlüsselwort kombiniert:
score = 85
if score >= 90
puts "Grade: A"
elsif score >= 80
puts "Grade: B"
else
puts "Grade: C"
endBeide Beispiele liefern das gleiche Ergebnis, aber elsif hält Ihren Code flacher und einfacher zu lesen. Sie können so viele elsif-Bedingungen verketten, wie Sie benötigen, und das abschließende else fängt alles ab, was nicht auf die vorherigen Bedingungen zutrifft.
Aufgabe
EinfachIhnen wird die folgende Variable zur Verfügung gestellt:
temperature = 15Erstellen Sie ein Wetterberatungssystem unter Verwendung von if, elsif und else, um die Temperatur zu klassifizieren und die entsprechende Nachricht auszugeben:
- Wenn
temperaturegrößer oder gleich30ist, geben SieHot - Stay hydratedaus - Wenn
temperaturegrößer oder gleich20ist, geben SieWarm - Enjoy the dayaus - Wenn
temperaturegrößer oder gleich10ist, geben SieCool - Bring a jacketaus - Wenn
temperaturegrößer oder gleich0ist, geben SieCold - Bundle upaus - Andernfalls geben Sie
Freezing - Stay indoorsaus
Geben Sie nur die einzelne Nachricht aus, die der Temperatur entspricht.
Spickzettel
Sie können if-else-Anweisungen ineinander verschachteln, um mehrere Bedingungen zu prüfen:
score = 85
if score >= 90
puts "Grade: A"
else
if score >= 80
puts "Grade: B"
else
puts "Grade: C"
end
endRuby bietet elsif als eine sauberere Möglichkeit, mehrere Bedingungen zu verketten:
score = 85
if score >= 90
puts "Grade: A"
elsif score >= 80
puts "Grade: B"
else
puts "Grade: C"
endSie können so viele elsif-Bedingungen wie nötig verketten. Das abschließende else fängt alles ab, was nicht den vorherigen Bedingungen entspricht.
Probier es selbst
temperature = 15
# TODO: Schreibe deinen Code unten, um die Temperatur zu klassifizieren
# Verwende if, elsif und else, um die entsprechende Wetterwarnung auszugebenDiese 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 47Rechnungs-Splitter
WillkommensnachrichtBenutzereingaben abfragen10FizzBuzz mit Twist
SpielübersichtDie FizzBuzz-Methode13Arrays für Fortgeschrittene
Array Slicing mit BereichenArray Slicing mit IndizesArray-OperatorenInclude? Methode2Variablen und Datentypen
Zahlen und VariablenDatentyp StringDatentyp BooleanDatentyp SymbolDatentypen prüfenBenennungskonventionenZusammenfassung – Erstellung von Variablen5Entscheidungsfindung
If-AnweisungIf - ElseWiederholung - Einfacher TaschenrechnerVerschachtelte If - Else-AnweisungenUnless-Anweisung8Schleifen
For-Schleife mit RangesWhile-SchleifeBreakNextRückblick - FakultätTimes-SchleifeUntil-SchleifeVerschachtelte SchleifenRückblick - Dynamische Eingabe3Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische AbkürzungenWiederholung – Einfache MathematikVergleichsoperatoren6Grundlagen Ein- und Ausgabe
Ausgabe mit putsAusgabe mit print und pAusgabe mit VariablenEingabe mit getsChomp-MethodeTypumwandlungWiederholung - AltersrechnerWiederholung - Wahr oder Falsch