Zagnieżdżone if - else
Część sekcji Podstawy ścieżki Ruby w Coddy. Lekcja 24 z 88.
Co zrobić, jeśli musisz sprawdzić więcej niż dwa warunki? Możesz umieścić instrukcję if-else wewnątrz innej instrukcji if-else. Nazywa się to zagnieżdżaniem i pozwala obsługiwać wiele punktów decyzyjnych.
score = 85
if score >= 90
puts "Grade: A"
else
if score >= 80
puts "Grade: B"
else
puts "Grade: C"
end
endRuby sprawdza pierwszy warunek. Jeśli jest fałszywy, przechodzi do bloku else, w którym czeka kolejna konstrukcja if-else. Tworzy to łańcuch decyzji, z których każda zawęża dostępne możliwości.
Ruby zapewnia czystszy sposób zapisu tego kodu za pomocą elsif, które łączy else i if w jedno słowo kluczowe:
score = 85
if score >= 90
puts "Grade: A"
elsif score >= 80
puts "Grade: B"
else
puts "Grade: C"
endOba przykłady dają ten sam wynik, ale elsif sprawia, że kod jest bardziej płaski i łatwiejszy do czytania. Możesz łączyć tyle warunków elsif, ile potrzebujesz, a końcowy else przechwytuje wszystko, co nie pasuje do wcześniejszych warunków.
Wyzwanie
ŁatwyOtrzymujesz następującą zmienną:
temperature = 15Utwórz system ostrzeżeń pogodowych, używając if, elsif i else, aby sklasyfikować temperaturę i wypisać odpowiedni komunikat:
- Jeśli
temperaturejest większa lub równa30, wypiszHot - Stay hydrated - Jeśli
temperaturejest większa lub równa20, wypiszWarm - Enjoy the day - Jeśli
temperaturejest większa lub równa10, wypiszCool - Bring a jacket - Jeśli
temperaturejest większa lub równa0, wypiszCold - Bundle up - W przeciwnym razie wypisz
Freezing - Stay indoors
Wypisz tylko jeden komunikat odpowiadający temperaturze.
Spróbuj swoich sił
temperature = 15
# TODO: Napisz poniżej kod klasyfikujący temperaturę
# Użyj if, elsif i else, aby wyświetlić odpowiedni komunikat dotyczący pogodyTa lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Operatory — część 2
Operatory logiczne — część 1Operatory logiczne — część 2Powtórka — podstawy logikiOperatory logiczne — część 3Operatory logiczne — część 47Kalkulator podziału rachunku
Wiadomość powitalnaPobieranie danych od użytkownika2Zmienne i typy danych
Liczby i zmienneTyp danych StringTyp danych BooleanTyp danych SymbolSprawdzanie typów danychKonwencje nazewnictwaPodsumowanie — tworzenie zmiennych5Podejmowanie decyzji
Instrukcja ifIf - elsePowtórka — prosty kalkulatorZagnieżdżone if - elseInstrukcja unless8Pętle
Pętla for z zakresamiPętla whilebreaknextPowtórka – silniaPętla timesPętla untilPętle zagnieżdżonePowtórka – dynamiczne wejście3Operatory — część 1
Operatory arytmetyczneOperator moduloSkrócone operatory arytmetycznePodsumowanie — prosta matematykaOperatory porównania6Podstawowe wejście i wyjście
Wyświetlanie za pomocą putsWyświetlanie za pomocą print i pWyświetlanie zmiennychWczytywanie za pomocą getsMetoda chompKonwersja typówPodsumowanie – kalkulator wiekuPodsumowanie – prawda czy fałszPoćwicz samodzielnie: Kompilator Ruby online