Olá, pessoal! Vamos dar continuidade ao nosso treinamento no canal Ralf Lima. Na aula anterior, vimos como tomar uma decisão simples com duas alternativas. Hoje, vamos aprender a trabalhar com a condicional encadeada.
Utilizamos a condicional encadeada quando o nosso programa precisa avaliar **múltiplas condições em sequência**. Em vez de apenas duas opções (verdadeiro ou falso), podemos criar vários caminhos possíveis utilizando a estrutura else if (senão se). O Go vai testando cada condição de cima para baixo e executa apenas o primeiro bloco que for verdadeiro.
A estrutura analisa as condições em fila. Assim que uma delas é atendida, o Go executa o código correspondente e ignora todo o restante da estrutura. Veja o papel de cada parte na tabela abaixo:
| Estrutura | Regra de Execução |
|---|---|
if |
Inicia a validação. É a primeira condição a ser testada. |
else if |
Adiciona uma nova condição específica. Só é avaliada se todas as condições anteriores falharem. |
else |
O caminho padrão (fallback). Só é executado se **nenhuma** das condições anteriores for verdadeira. |
Um ponto de muita atenção ao encadear condições é a **lógica de precedência**. No código de exemplo, nós começamos validando se a nota está fora dos limites permitidos (menor que 0 ou maior que 10). Fazer esse tipo de validação logo no início evita que o programa processe dados incorretos nas linhas seguintes.
Veja abaixo como fica o nosso código estruturado para classificar o desempenho de um aluno através de várias faixas de notas:
package main
import "fmt"
func main() {
// Variável de média
media := 11
// Condicional encadeada
if media > 10 || media < 0 {
fmt.Println("Média inválida!")
} else if media == 10 {
fmt.Println("Excelente! Nota máxima!")
} else if media >= 9 {
fmt.Println("Ótimo!")
} else if media >= 8 {
fmt.Println("Bom!")
} else if media >= 7 {
fmt.Println("Na média!")
} else if media >= 5 {
fmt.Println("Em recuperação!")
} else {
fmt.Println("Reprovado(a)")
}
}
Finalizamos os conteúdos desta aula sobre estruturas condicionais encadeadas. Espero que tenham compreendido como organizar múltiplos testes lógicos no Go. Em caso de dúvidas, comentem nos vídeos disponíveis no YouTube.