Изјава иф елсе
Изјава иф-елсе је сјајан алат за програмера који покушава да врати излаз на основу услова. У Р, синтакса је:
if (condition) {Expr1} else {Expr2}
Желимо да испитамо да ли је променљива сачувана као „количина“ изнад 20. Ако је количина већа од 20, код ће исписати „Много сте продали!“ иначе Недовољно за данас.
# Create vector quantityquantity <- 25# Set the is-else statementif (quantity > 20) {print('You sold a lot!')} else {print('Not enough for today')}
Излаз:
## [1] "You sold a lot!"
Напомена : Обавезно правилно напишите удубљења. Код са више услова може постати нечитљив када удубљења нису у исправном положају.
Изјава елсе иф
Можемо даље прилагодити ниво контроле помоћу наредбе елсе иф. Са елиф-ом можете додати колико год услова желимо. Синтакса је:
if (condition1) {expr1} else if (condition2) {expr2} else if (condition3) {expr3} else {expr4}
Занима нас да ли смо продали количине између 20 и 30. Ако то учинимо, онда пинт Просечни дан. Ако је количина> 30, исписујемо Какав сјајан дан! Иначе Недовољно за данас.
Можете покушати да промените количину количине.
# Create vector quantiyquantity <- 10# Create multiple condition statementif (quantity <20) {print('Not enough for today')} else if (quantity > 20 &quantity <= 30) {print('Average day')} else {print('What a great day!')}
Излаз:
## [1] "Not enough for today"
Пример 2:
ПДВ има различиту стопу у зависности од купљеног производа. Замислите да имамо три различите врсте производа са различитим ПДВ-ом:
Категорије | Производи | ПДВ |
---|---|---|
А. | Књига, часопис, новине итд ... | 8% |
Б. | Поврће, месо, пиће итд ... | 10% |
Ц. | Мајица, фармерке, панталоне итд ... | 20% |
Можемо написати ланац како бисмо применили тачну стопу ПДВ-а на производ који је купац купио.
category <- 'A'price <- 10if (category =='A'){cat('A vat rate of 8% is applied.','The total price is',price *1.08)} else if (category =='B'){cat('A vat rate of 10% is applied.','The total price is',price *1.10)} else {cat('A vat rate of 20% is applied.','The total price is',price *1.20)}
Излаз:
# A vat rate of 8% is applied. The total price is 10.8