A instrução if else
Uma instrução if-else é uma ótima ferramenta para o desenvolvedor que tenta retornar uma saída com base em uma condição. Em R, a sintaxe é:
if (condition) {Expr1} else {Expr2}
Queremos examinar se uma variável armazenada como "quantidade" está acima de 20. Se a quantidade for maior que 20, o código imprimirá "Você vendeu muito!" caso contrário, não é o suficiente por hoje.
# Create vector quantityquantity <- 25# Set the is-else statementif (quantity > 20) {print('You sold a lot!')} else {print('Not enough for today')}
Resultado:
## [1] "You sold a lot!"
Nota : Certifique-se de escrever corretamente os recuos. O código com várias condições pode se tornar ilegível quando as indentações não estão na posição correta.
O else if declaração
Podemos personalizar ainda mais o nível de controle com a instrução else if. Com elif, você pode adicionar quantas condições quisermos. A sintaxe é:
if (condition1) {expr1} else if (condition2) {expr2} else if (condition3) {expr3} else {expr4}
Estamos interessados em saber se vendemos quantidades entre 20 e 30. Se o fizermos, então o pint Average day. Se a quantidade for> 30, imprimimos Que ótimo dia! Caso contrário, não é o suficiente por hoje.
Você pode tentar alterar a quantidade de quantidade.
# 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!')}
Resultado:
## [1] "Not enough for today"
Exemplo 2:
O IVA tem alíquota diferente de acordo com o produto adquirido. Imagine que temos três tipos diferentes de produtos com diferentes IVAs aplicados:
Categorias | Produtos | CUBA |
---|---|---|
UMA | Livro, revista, jornal, etc ... | 8% |
B | Vegetais, carnes, bebidas, etc ... | 10% |
C | Camiseta, jeans, calça, etc ... | 20% |
Podemos escrever uma cadeia para aplicar a taxa de IVA correta ao produto que um cliente comprou.
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)}
Resultado:
# A vat rate of 8% is applied. The total price is 10.8