Изявлението if else
Изявлението if-else е чудесен инструмент за разработчика, който се опитва да върне изход въз основа на условие. В R синтаксисът е:
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!"
Забележка : Уверете се, че сте написали правилно вдлъбнатините. Кодът с множество условия може да стане нечетлив, когато вдлъбнатините не са в правилната позиция.
Изявлението else if
По-нататък можем да персонализираме нивото на контрол с инструкцията else if. С elif можете да добавите толкова условия, колкото искаме. Синтаксисът е:
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:
ДДС има различна ставка според закупения продукт. Представете си, че имаме три различни вида продукти с различен ДДС:
Категории | Продукти | ДДС |
---|---|---|
A | Книга, списание, вестник и т.н. ... | 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