Instrukcja unless
Część sekcji Podstawy ścieżki Ruby w Coddy. Lekcja 25 z 88.
Ruby oferuje wyjątkowy sposób wyrażania warunków, gdy chcesz uruchomić kod tylko wtedy, gdy coś nie jest prawdą. Instrukcja unless jest zasadniczo przeciwieństwem instrukcji if.
Przy użyciu if kod jest wykonywany, gdy warunek jest prawdziwy. Przy użyciu unless kod jest wykonywany, gdy warunek jest false:
logged_in = false
unless logged_in
puts "Please log in to continue"
endTo jest równoważne zapisaniu if !logged_in, ale zapis z użyciem unless często brzmi naturalniej. Pomyśl o tym tak: „zrób to, chyba że ten warunek jest prawdziwy”.
Możesz także użyć unless z else:
age = 20
unless age < 18
puts "Access granted"
else
puts "Access denied"
endJednak gdy potrzebujesz bloku else, użycie if jest zazwyczaj bardziej przejrzyste. Instrukcja unless sprawdza się najlepiej, gdy masz prosty warunek negatywny bez alternatywnej ścieżki. Wybierz to, co ułatwia szybkie zrozumienie kodu.
Wyzwanie
ŁatwyPodano następujące zmienne:
has_ticket = false
is_vip = true
items_in_cart = 0
battery_level = 15
is_charging = falseUżyj instrukcji unless, aby sprawdzić każdy z poniższych przypadków. Wypisz podany komunikat tylko wtedy, gdy warunek jest fałszywy (wtedy unless wykonuje swój blok).
- Jeśli
has_ticketnie ma wartościtrue, wypiszPlease purchase a ticket - Jeśli
is_vipnie ma wartościtrue, wypiszVIP access required - Jeśli wartość
items_in_cartnie jest większa niż0, wypiszYour cart is empty - Jeśli wartość
battery_levelnie jest większa niż20, wypiszLow battery warning - Jeśli
is_chargingnie ma wartościtrueani wartośćbattery_levelnie jest większa niż50, wypiszPlease charge your device
Każdy komunikat powinien pojawić się w osobnym wierszu. Wypisuj tylko komunikaty dla warunków, które uruchamiają blok unless.
Spróbuj swoich sił
# Zmienne zostały już zdefiniowane
has_ticket = false
is_vip = true
items_in_cart = 0
battery_level = 15
is_charging = false
# TODO: Napisz swój kod poniżej
# Użyj instrukcji unless, aby sprawdzić każdy warunek i wyświetlić odpowiedni komunikatTa 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