Оператор 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:
Ставка НДС зависит от приобретенного товара. Представьте, что у нас есть три разных вида продуктов с разным НДС:
Категории | Товары | НДС |
---|---|---|
А | Книга, журнал, газета и т. Д. | 8% |
B | Овощи, мясо, напитки и т. Д. | 10% |
C | Футболка, джинсы, брюки и т. Д. | 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