Condicionais em linguagem R: if / else if / else
Condicionais em linguagem R: if / else if / else
Usamos uma estrutura de desvio condicional para tomar uma decisão de acordo com o resultado de uma condição (teste lógico), e então executar um bloco de códigos que depende do resultado desse teste.
As estruturas de decisão podem ser Simples, Composta ou Encadeada, e são criadas com o emprego da declaração if
Desvio Condicional Simples – if
O desvio condicional simples permite executar um bloco de código caso o resultado do teste seja verdadeiro, ignorando um resultado falso.
x <- 30 if (x == 30) { res <- "Número igual a 30" print(res) }
Desvio Condicional composto: if / else
O desvio condicional composto permite criar dois blocos de código após realizar o teste lógico:
Se o teste lógico retornar verdadeiro, as instruções contidas no bloco if serão executadas (como no condicional simples)
Porém, se o teste lógico retornar falso, as instruções contidas em um bloco chamado else é que serão executadas.
x <- 30 if (x == 30) { res <- "Número igual a 30" } else { res <- "Número diferente de 30" } print(res)
Note que a instrução else deve estar localizada na mesma linha da chave de fechamento da instrução if, ou o script não funcionará.
Para declarações compostas com apenas uma instrução a executar, é possível abreviar o código da seguinte maneira:
x <- 30 res <- if (x == 30) "Igual" else "Diferente" print(res)
Desvio Condicional Encadeado: if / else if / else
Em muitas situações é preciso verificar condições de teste sucessivas, onde uma ação será executada se um conjunto anterior de ações for satisfeito.
Podemos usar nestes casos uma estrutura denominada Desvio Condicional Encadeado, que basicamente é o encadeamento (combinação) de estruturas de decisão compostas em um script.
x <- 30 if (x == 30) { res <- "Número igual a 30" } else if (x > 30{ res <- "Número maior que 30" } else { res <- "Número menor que 30" } print(res)
Note que nesse caso combinamos as declarações else e if em uma mesma linha, para criar o encadeamento de condicionais.
Escreva um comentário