VisuAlg Web

E, ou e nao no Visual Cobra: combinar condições

Exigir duas condições para permitir acesso em Visual Cobra. Execute o exemplo, confira o resultado e pratique os casos de limite no VisuAlg Web.

No Visual Cobra, as combinações lógicas são feitas com e, ou e nao. Elas permitem montar regras mais completas em decisões.

Exemplo de códigoVisual Cobra


idade = 14
altura = 1.60

# O E exige que os DOIS lados sejam verdadeiros
podeBrincar = (idade >= 12) e (altura >= 1.50)
escreva("Pode entrar na Montanha Russa? ", podeBrincar)
Exemplo de códigoVisual Cobra


dinheiro = Verdadeiro
cartao = Verdadeiro

# No XOR, se você tiver os dois, ele retorna Falso.
escreva("Pagou com exclusividade?", dinheiro != cartao)

# Invertendo uma verdade com NAO
escreva("Estou sem dinheiro?", nao dinheiro)

Exigir duas condições para permitir acesso

Permitir uma entrada pode depender de mais de um dado: ter idade suficiente e possuir ingresso. O operador de conjunção exige que as duas condições sejam verdadeiras; a disjunção aceita ao menos uma. A negação inverte o valor lógico. Para investigar um erro, confira cada comparação separadamente antes de combinar as condições. Não use um texto como substituto de um valor lógico: uma string não vazia pode ser considerada verdadeira mesmo que seu conteúdo diga “não”.

Preserve a indentação dos blocos ao modificar este exemplo em Visual Cobra.

Exemplo de códigoVisual Cobra
idade = 18
tem_ingresso = Falso
se idade >= 18 e tem_ingresso:
    escreva("Acesso permitido")
senao:
    escreva("Acesso negado")

Resultado esperado e testes

Execute o exemplo sem fornecer entradas. A saída deve ser:

Acesso negado

Mantenha a idade 18 e altere o ingresso para verdadeiro: o acesso deve ser permitido. Depois teste idade 17 com ingresso: deve ser negado. Liste as quatro combinações entre idade suficiente e ingresso. Como exercício, adicione uma autorização extra e explique com parênteses quais condições precisam valer juntas.

Depois, compare o raciocínio com a versão do mesmo assunto nas outras linguagens do menu.