Увод ако изјава у Р

Изјава „иф“ у Р је условна изјава која се користи за тестирање стања (услова) или генерисање резултата заснованог на стању. Изјава иф у случају Р може пратити више других ифс, и на крају наредбу елсе. Дјелује узастопно, као што је, ако се увјет тестира позитивно ако и сам, а затим наредни ифс и наредба елсе неће извршити. Слично томе, ако се извршава било који други ифс, затим следећи ако се изјаве и наредба елсе не извршавају. Остало ће се извршити само ако претходни иф и елсе ифс (ако постоје) тестирају негативно на услов.

Синтакса

Синтакса изјаве иф-елсе у Р је сљедећа:

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.
)

Синтакса изјаве иф-елсе иф-елсе у Р је сљедећа:

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.
)

Дијаграм тока

Ево доље наведеног дијаграма тока

Примери ако изјава у Р

Разумевање да ли је изјава у Р кроз примере

Изјава иф у Р може се користити у различитим ситуацијама и ради са различитим врстама података. Покушаћемо да га имплементирамо како бисмо разумели његово радно право од основних до најсложенијих ситуација. Хајде да разумемо ово детаљније.

Пример # 1

У овом примеру ћемо проверити да ли је број дељив са 21 или не. Направићемо функцију која тестира стање ове поделе користећи израз иф-елсе. Затим ћемо број који се тестира пренети у функцију.

Следећи снимак слике приказује функцију у Р која уграђује иф-елсе за проверу теста дељивости за један број.

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

У горе наведеном коду, број прослеђен у функцију прво ће се потврдити у односу на стање из ставка иф. Дакле, ако број подељен 21 врати нулу као остатак, тада ће се код у блоку штампати као излаз, иначе ће се извршити.

Пренос различитих бројева у горњој функцији даје резултате као што је приказано у наставку:

Пример бр. 2

У другом примеру ћемо проширити петљу иф-елсе на наредбу иф-елсе иф-елсе. Овде намеравамо да проверимо да ли је број дељив са 7 и 9, само са 7, али не са 9, само са 9, али не са 7, или ниједан од два броја. Ако је било који услов испуњен, извршиће се одговарајући блок кода. Може постојати више изјава-иф. Као што је раније споменуто, блок кода у елсе се извршава само кад није испуњен ниједан услов. Излазни изводи у одговарајућим блоковима морају правилно преносити значење.

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.")
)
)

Слање различитих бројева у функцији дефинисаној помоћу горњег кода генерише излаз као што је приказано на слици испод.

Слање различитих бројева у кориснички дефинираној функцији дивиде.фунцтион () даје резултат као горе. Овде су могуће четири врсте бројева; прво оне које су дељиве са 7 и 9 као што су 63 и 126, друго оне дељиве са 7, али не са 9 као што су 14 и 35, треће оне које су дељиве са 9, али не са 7 као што су 18 и 36, и на крају оне које су дељиве ниједан од два цела броја, тј. 7 и 9. Коначни услов је део ставка наредбе, јер се провере сви други могући услови, у претходном случају ако и ако је иф.

Пример бр. 3

У овом примеру ћемо проверити да ли је број главни број или не. Било који број, који је дељив само по себи и један, назива се примарним бројем. Међутим, мора се напоменути да 1 није примарни број јер не задовољава услов да број буде једноставан, јер у случају 1, оба броја, тј. И 1, су исти. Даље, шта ако корисник убаци функцију негативног броја да провјери је ли примарни или не? Дакле, сви горе наведени услови мораће бити узети у обзир током спровођења функције. Погледајмо како функција изгледа када је имплементирана, као што је приказано у наставку.

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.")
)
)
)

  • Горњи снимак слике приказује корисничку функцију примецхецк.фунцтион () у Р. Као што се може видети, код користи угнијежђено иф-елсе за обављање задатка. Да видимо како функционише код. Функција примецхецк.фунцтион () узима само један параметар. У почетку је променљива застава постављена на 1. Тада почиње одсек иф-елсе иф-елсе. Изјава иф провјерава да ли је број већи од нуле или не. Ово је веома важан услов и мора бити први услов.
  • Ако није, онда функција генерише одговарајућу поруку. Затим, елсе-иф провјерава да ли је број једнак 1 и говори кориснику да 1 није примарни број; разлог је наведен у претходном одељку. Ако ниједан од горе наведена два услова није испуњен, извршава се блок кода у одјељку елсе. Уосталом, сада ми у ствари покушавамо да проверимо да ли је број празан или не ради петље.
  • Петља фор дели број од 2 на број минус 1 за променљиву вредност прираста, а у овом распону, ако се подели, застава је постављена на нулу, што значи да број није примарни број. Изјава иф-елсе за петљу тестира стање на застави и генерише одговарајући излаз.

Функција ради и даје резултате као што је приказано на слици доле.

Закључак

У Р програмирању, изјава иф-елсе или иф-елсе иф-елсе може се ефикасно користити за рад са аспектима који се тичу услова. Р скрипта можда неће олакшати имплементацију ако изјаве на исти начин као што то нуде други програмски језици. Међутим, ако-елсе може се лепо уклопити у функције за постизање свих могућих резултата.

Препоручени чланци

Ово је водич за Иф изјаву у Р. Овде смо расправљали о случају иф-елсе или иф-елсе ако-елсе може се ефикасно користити за рад са аспектима који се тичу услова. Можда ћете такође погледати следеће чланке да бисте сазнали више -

  1. Шта је програмски језик Р?
  2. Р Пакети
  3. Р Типови података
  4. Иф-елсе Изјава на Ц
  5. ИФ-Елсе изјава у Матлабу

Категорија: