Instrukcja if
Część sekcji Podstawy ścieżki R w Coddy. Lekcja 22 z 78.
Teraz, gdy wiesz już, jak tworzyć wyrażenia logiczne, pora sprawić, by Twoje programy faktycznie coś robiły na podstawie tych warunków. Instrukcja if pozwala Twojemu kodowi podejmować decyzje.
Instrukcja if wykonuje blok kodu tylko wtedy, gdy warunek ma wartość TRUE:
temperature <- 35
if (temperature > 30) {
print("It's hot outside!")
}Gdy R napotyka instrukcję if, oblicza warunek znajdujący się w nawiasach. Jeśli wynik to TRUE, wykonywany jest kod wewnątrz nawiasów klamrowych {}. Jeśli wynik to FALSE, R całkowicie pomija ten blok i kontynuuje wykonywanie reszty programu.
Jako warunku możesz użyć dowolnego wyrażenia, które przyjmuje wartość logiczną, w tym operatorów porównania i operatorów logicznych, których już się nauczyłeś:
age <- 20
has_id <- TRUE
if (age >= 18 && has_id) {
print("Access granted")
}Kod wewnątrz nawiasów klamrowych uruchamia się tylko wtedy, gdy spełnione są oba warunki. Jeśli age jest mniejsze niż 18 lub has_id ma wartość FALSE, nic się nie dzieje.
Wyzwanie
ŁatwyUżyj instrukcji if, aby sprawdzić warunek i wyświetlić komunikat tylko wtedy, gdy warunek jest spełniony (TRUE).
Otrzymujesz następujące zmienne:
balance <- 250
withdrawal_amount <- 100
is_account_active <- TRUENapisz instrukcję if, która sprawdza, czy spełnione są wszystkie poniższe warunki:
- Konto jest aktywne
- Saldo jest większe lub równe kwocie wypłaty
Jeśli oba warunki są spełnione (TRUE), wyświetl komunikat "Withdrawal approved" za pomocą funkcji print().
Jeśli warunki nie są spełnione, Twój kod nie powinien generować żadnych danych wyjściowych.
Spróbuj swoich sił
# Podane zmienne
balance <- 250
withdrawal_amount <- 100
is_account_active <- TRUE
# TODO: Napisz swój kod poniżej
# Użyj instrukcji if, aby sprawdzić, czy:
# 1. Konto jest aktywne
# 2. Saldo jest większe lub równe kwocie wypłaty
# Jeśli oba warunki są TRUE, wypisz "Withdrawal approved"Ta 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 (AND, OR)Operatory logiczne, część 2 (NOT)Powtórka — prosta logikaLogika wektoryzowana, część 1Logika wektoryzowana, część 27Kalkulator podziału rachunku
Wiadomość powitalnaPobieranie danych od użytkownika10FizzBuzz z niespodzianką
Omówienie gryFunkcja FizzBuzz2Zmienne i typy danych
Liczbowy typ danychCałkowity typ danychZnakowy typ danychLogiczny typ danychSprawdzanie typów danychKonwencje nazewnictwaBrakujące wartości: NAPodsumowanie – tworzenie zmiennych8Pętle
Pętla forPętla whilePrzerwijNastępna iteracja (continue)Powtórka — silniaGenerowanie sekwencji (seq, :)Pętle zagnieżdżonePowtórka — dynamiczne wprowadzanie danych3Operatory, część 1
Operatory arytmetyczneDzielenie całkowite i moduloOperatory przypisaniaPowtórka — prosta matematykaOperatory porównania6Podstawowe wejście/wyjście
Wyświetlanie danychCat jako wyjścieWyjście z użyciem zmiennychOdczyt danych wejściowych za pomocą readline()Podstawy konwersji typówPowtórka — kalkulator wiekuPowtórka — prawda czy fałsz9Funkcje
Deklarowanie funkcjiArgumenty funkcjiWartości zwracanePowtórzenie — funkcja SigmaPowtórzenie — funkcja walidującaDomyślne wartości parametrówPoćwicz samodzielnie: Kompilator R online