Operadores lógicos combinam ou invertem condições e retornam verdadeiro ou falso. No Portugol do VisuAlg, e exige duas condições verdadeiras, ou aceita pelo menos uma, nao inverte uma condição e xou aceita exatamente uma condição verdadeira.
Sintaxe dos operadores lógicos
Escreva (condicao1) e (condicao2), (condicao1) ou (condicao2), nao (condicao) ou (condicao1) xou (condicao2). As palavras-chave no código não usam acentos: escrevemos nao, embora a explicação use NÃO.
Tabelas verdade de E, OU e XOU
| A | B | A e B | A ou B | A xou B |
|---|---|---|---|---|
| V | V | V | V | F |
| V | F | F | V | V |
| F | V | F | V | V |
| F | F | F | F | F |
| A | nao A |
|---|---|
| V | F |
| F | V |
Exemplo: verificar dois critérios com E
Para entrar em um brinquedo, a pessoa precisa atender ao limite de idade e ao de altura. Modifique um dos valores e execute novamente para comparar a saída.
algoritmo "ParqueDeDiversoes"
var
idade: inteiro
altura: real
podeBrincar: logico
inicio
idade <- 14
altura <- 1.60
// O E exige que os DOIS lados sejam verdadeiros
podeBrincar <- (idade >= 12) E (altura >= 1.50)
escreval("Pode entrar na Montanha Russa? ", podeBrincar)
fimalgoritmoPrecedência e parênteses
Os parênteses definem o agrupamento; nao tem prioridade entre os operadores lógicos. No VisuAlg Web, e, ou e xou são avaliados no mesmo nível, da esquerda para a direita. Ao misturar operadores, use parênteses para tornar explícita a regra desejada, como (idade >= 12) e ((altura >= 1.50) ou (acompanhado)).
Exemplo de XOU e NÃO
xou representa uma escolha exclusiva: duas condições verdadeiras produzem falso. nao troca verdadeiro por falso e falso por verdadeiro. Execute o exemplo e mude uma variável por vez.
algoritmo "LogicaXor"
var
dinheiro, cartao: logico
inicio
dinheiro <- verdadeiro
cartao <- verdadeiro
// XOU exige exatamente uma opção verdadeira.
escreval("Pagou com exclusividade? ", dinheiro xou cartao)
// Invertendo uma verdade com NAO
escreval("Estou sem dinheiro? ", nao dinheiro)
fimalgoritmoExercício de operadores lógicos
Crie um algoritmo que leia a renda e use uma variável lógica para indicar uma pendência. Mostre se o empréstimo é autorizado quando (renda > 2000) e (nao temPendencia). Antes de executar, preveja a saída para cada combinação de condições.
Erros comuns e próximo passo
- Usar
ouquando todos os critérios precisam ser atendidos: nessa situação, usee. - Confundir OU com XOU: OU também aceita duas condições verdadeiras.
- Inverter apenas parte do teste: use
nao (condicao)para deixar claro o que será negado.
Pratique com uma regra que autorize um empréstimo quando a renda for maior que 2000 e não houver pendência. Teste os quatro pares de condições. Revise comparações e avance para condicionais com SE. Os exercícios de condicionais ajudam a aplicar a regra.