🛤️ Operador Lógico OU (Disjunção)

Diferente do exigente e, o operador ou é muito mais flexível. Ele permite que o algoritmo prossiga se qualquer uma das condições for verdadeira. Ele só retorna falso se todas as entradas falharem ao mesmo tempo.

🏝️ A Nova Regra da Praia

Imagine que seus pais mudaram de ideia:

“Você pode ir à praia se estiver sol ou se você não tiver prova.”

Nesse cenário, sua diversão está garantida se:

  1. Estiver sol (mesmo com prova).
  2. Não tiver prova (mesmo nublado).
  3. Estiver sol e não tiver prova.
  • Você só fica em casa se: Estiver nublado e você tiver prova.

🧪 Simulação de Vários Casos

Entrada AEntrada BResultado (OU)
Falso (Chove)Falso (Tem Prova)Falso 🏠
Falso (Chove)Verdadeiro (Sem Prova)Verdadeiro 🏖️
Verdadeiro (Sol)Falso (Tem Prova)Verdadeiro 🏖️
Verdadeiro (Sol)Verdadeiro (Sem Prova)Verdadeiro 🏖️

🏗️ Misturando Operadores: Lógica Complexa

Podemos combinar e e ou para criar regras de negócio sofisticadas. Note o uso dos parênteses para definir a prioridade:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
programa {
    funcao inicio() {
        inteiro idade
        real horasTeoricas, horasPraticas
        
        escreva("Idade: ") leia(idade)
        escreva("Teoria: ") leia(horasTeoricas)
        escreva("Prática: ") leia(horasPraticas)

        // Expressão composta: Todos os requisitos em uma linha!
        se (idade >= 18 e horasTeoricas >= 45 e horasPraticas >= 20) {
            escreva("\n[STATUS] Candidato(a) APTO(A) para o exame.")
        } senao {
            escreva("\n[STATUS] Candidato(a) NÃO APTO(A).")
        }
    }
}

Dica de Engenharia: Use parênteses extras ( ) para agrupar suas comparações. Isso evita ambiguidades para o compilador e torna seu código muito mais fácil de ler por outros desenvolvedores.


🏁 Resumo do Capítulo

O operador ou abre portas para múltiplas possibilidades em um único desvio. No próximo capítulo, veremos como o NÃO inverte o jogo e concluiremos nosso estudo sobre lógica! 🚀