Quando você tem muitas rotas possíveis baseadas em uma única variável (como opções de um menu de restaurante), usar vários se... senao deixa o código confuso. A estrutura escolha... caso resolve isso olhando para uma variável e saltando direto para o caso correspondente.
algoritmo "MenuLanchonete"
var
opcao: inteiro
inicio
escreval("1 - Hambúrguer | 2 - Pizza | 3 - Salada")
leia(opcao)
escolha opcao
caso 1
escreval("Preparando Hambúrguer...")
caso 2
escreval("Assando Pizza...")
caso 3
escreval("Cortando Salada...")
fimescolha
fimalgoritmoPara evitar que o programa quebre quando o usuário digita uma opção que não existe (como 99), adicionamos o comando outrocaso, que funciona como um salva-vidas universal pegando qualquer valor não listado.
algoritmo "VerificaVogal"
var
letra: caractere
inicio
escreva("Digite uma letra minúscula: ")
leia(letra)
escolha letra
caso "a", "e", "i", "o", "u" // O VisuAlg permite agrupar casos separados por vírgula!
escreval("É uma vogal!")
outrocaso
escreval("É uma consoante (ou símbolo)!")
fimescolha
fimalgoritmoExercício: menu com alternativa inválida
Use ESCOLHA quando várias alternativas dependem do mesmo valor. Cada caso representa uma escolha e outrocaso trata valores não previstos. Diferentemente de um intervalo como “média maior que 7”, aqui procuramos opções específicas.
algoritmo "MenuDeEstudo"
var
opcao: inteiro
inicio
opcao <- 2
escolha opcao
caso 1
escreval("Abrir exercícios")
caso 2
escreval("Consultar notas")
outrocaso
escreval("Opção inválida")
fimescolha
fimalgoritmo
A opção 2 imprime Consultar notas. Teste também 1 e 99 para percorrer todos os caminhos. Não deixe o caso inválido sem resposta: ele ajuda o usuário a entender o que ocorreu.
Para condições com intervalos ou combinações, revise SE, ENTÃO e SENÃO. Para mostrar o menu repetidamente, estude REPITA ATÉ.