Úvod do prohlášení If v R

Příkaz „if“ v R je podmíněný příkaz, který se používá k testování podmínky nebo generování výstupu založeného na podmínkách. Za výrazem if v R může následovat několik dalších ifs a nakonec i příkaz else. Funguje to postupně, například, pokud podmínka testuje pozitivní, pokud je sama, pak další ifs a příkaz else se nevykoná. Podobně, pokud se vykonává některá z ostatních ifs, pak další, pokud se příkazy a else neprovedou. Ostatní budou provedeny, pouze pokud předchozí předchozí if a else if (pokud jsou přítomny) testují negativní stav.

Syntax

Syntaxe příkazu if-else v R je následující:

if (condition) (
statement_1 # This statement will execute if the condition is satisfied.
)
else (
statement_2 # This section will execute if the condition is not satisfied.
)

Syntaxe příkazu if-else if-else v R je následující:

if (condition_1) (
statement_block_1 # This block will execute if condition 1 is met.
)
else if (condition_2) (
statement_block_2 # This block will execute if condition 2 is met.
)
else (
statement_block_3 # This block will execute if none of the conditions is met.
)

Vývojový diagram

Níže je uveden vývojový diagram

Příklady příkazu if v R

Porozumění tvrzení v R prostřednictvím příkladů

Příkaz if v R lze použít v různých situacích a pracuje s různými typy dat. Pokusíme se ji implementovat, abychom pochopili její pracovní právo od základních po nejsložitější situace. Pojďme to pochopit podrobněji.

Příklad č. 1

V tomto příkladu zkontrolujeme, zda je číslo dělitelné 21 nebo ne. Vytvoříme funkci, která otestuje tuto podmínku rozdělení pomocí příkazu if-else. Pak předáme číslo, které má být testováno, do funkce.

Následující obrázek ukazuje funkci v R, která vloží if-else pro ověření testu dělitelnosti čísla.

divide.function <- function(x) (
if (x %% 21 == 0)
(
print(“The number is divisible by 21”)
)
else (
print(“The number is not divisible by 21”)
)
)

Ve výše uvedeném kódu bude číslo předané do funkce nejprve ověřeno proti podmínce v příkazu if. Pokud tedy číslo při dělení 21 vrátí nulu jako zbytek, kód v bloku if bude vytištěn jako výstup, jinak bude spuštěn.

Předávání různých čísel ve výše uvedené funkci dává výsledky, jak je uvedeno níže:

Příklad č. 2

Ve druhém příkladu rozšíříme smyčku if-else na příkaz if-else if-else. Zde máme v úmyslu zkontrolovat, zda je číslo dělitelné 7 a 9, pouze 7, ale ne 9, pouze 9, ale ne 7, nebo žádným z těchto dvou čísel. Pokud je některá podmínka splněna, provede se odpovídající kódový blok. Může existovat více jiných příkazů if. Jak již bylo zmíněno dříve, blok kódu v jiném provedení se provede, pouze pokud není splněna žádná podmínka. Výstupní příkazy v odpovídajících blocích musí význam správně vysvětlit.

divide.function <- function(x) (
if (x %% 7 == 0 && x %% 9 == 0)
(
print("The number is divisible by both 7 and 9.")
)
else if (x %% 7 == 0) (
print("The number is divisible by 7 but not by 9.")
)
else if (x %% 9 == 0) (
print("The number is divisible by 9 but not by 7.")
)
else (
print("The number is divisible neither by 7 nor by 9.")
)
)

Předávání různých čísel ve funkci definované pomocí výše uvedeného kódu generuje výstup, jak je znázorněno na níže uvedeném snímku obrazovky.

Předávání různých čísel v uživatelem definované funkci divide.function () dává výsledek, jak je uvedeno výše. Zde jsou možné čtyři typy čísel; zaprvé ty dělitelné 7 a 9, jako jsou 63 a 126, za druhé ty dělitelné 7, ale ne 9 jako 14 a 35, zatřetí ty dělitelné 9, ale ne 7 jako 18 a 36, ​​a konečně dělitelní ani jedním ze dvou celých čísel, tj. 7 a 9. Poslední podmínka je součástí příkazu else, protože jsou zkontrolovány všechny ostatní možné podmínky, v předchozím případě if a else ifs.

Příklad č. 3

V tomto příkladu zkontrolujeme, zda je číslo prvočíslo nebo ne. Jakékoli číslo, které je dělitelné pouze samo sebou a jedno, se nazývá prvočíslo. Je však třeba poznamenat, že 1 není prvočíslo, protože nesplňuje podmínku, aby číslo bylo prvočíslo, protože v případě 1 jsou obě čísla, tj. Sama i 1 stejná. Co když uživatel předá do funkce záporné číslo, aby zkontroloval, zda je prvočíslo nebo ne? Při implementaci funkce je tedy třeba vzít v úvahu všechny výše uvedené podmínky. Podívejme se, jak tato funkce vypadá, když je implementována, jak je ukázáno níže.

primecheck.function <- function(x) (
flag <- 1
if (x <= 0)
(
print("Number must be greater than zero.")
)
else if (x == 1)
(
print("1 is not a prime number.")
)
else
(
for (i in 3:x-1)
(
if (x %% i == 0)
(
flag <- 0
)
)
if (flag == 0)
(
paste(x, "is not a prime number.")
)
else
(
paste(x, "is a prime number.")
)
)
)

  • Výše uvedený snímek obrazovky zobrazuje uživatelem definovanou funkci primecheck.function () v R. Jak je vidět, kód používá k plnění úkolu vnořený if-else. Uvidíme, jak kód funguje. Funkce primecheck.function () bere pouze jeden parametr. Zpočátku je proměnná flag nastavena na 1. Pak začíná sekce if-else if-else. Příkaz if zkontroluje, zda je číslo větší než nula nebo ne. Toto je velmi důležitá podmínka a musí být první podmínkou.
  • Pokud ne, funkce vygeneruje příslušnou zprávu. Dále, else-if zkontroluje, zda je číslo rovné 1 a řekne uživateli, že 1 není prvočíslo; důvod byl uveden v předchozí části. Pokud není splněna žádná z výše uvedených podmínek, spustí se kódový blok v jiné části. Jinak se nyní v podstatě snažíme zkontrolovat, zda je číslo prvočíslo nebo ne.
  • Smyčka for dělí číslo od 2 na číslo mínus 1 rozsahem inkrementální proměnné a v tomto rozsahu, pokud se rozdělí, pak je příznak nastaven na nulu, což znamená, že číslo není prvočíslo. Příkaz if-else mimo smyčku testuje stav na příznaku a generuje vhodný výstup.

Funkce funguje a poskytuje výsledky, jak je uvedeno na níže uvedeném snímku obrazovky.

Závěr

V programování R lze příkaz if-else nebo if-else if-else účinně použít pro práci s aspekty souvisejícími s podmínkami. Skript R nemusí usnadňovat implementaci příkazů if stejným způsobem, jako nabízejí jiné programovací jazyky. Nicméně, pokud-else může být krásně zabudován do funkcí získat všechny možné výsledky.

Doporučené články

Toto je průvodce k prohlášení If v R. Zde diskutujeme o prohlášení if-else nebo if-else if-else, které lze efektivně použít pro práci s aspekty souvisejícími s podmínkami. Další informace naleznete také v následujících článcích -

  1. Co je to programovací jazyk R?
  2. R Balíčky
  3. R Datové typy
  4. Prohlášení if-else v C
  5. IF-Else prohlášení v Matlabu

Kategorie: