Os materiais didáticos aqui disponibilizados estão licenciados através de Creative Commons Atribuição-SemDerivações-SemDerivados CC BY-NC-ND. Você possui a permissão para visualizar e compartilhar, desde que atribua os créditos do autor. Não poderá alterá-los e nem utilizá-los para fins comerciais.
Atribuição-SemDerivações-SemDerivados
CC BY-NC-ND
Cursos / Informática para Internet / Lógica de Programação / Aula
Nas estruturas de decisão que vimos anteriormente, um comando ou bloco de comandos é executado de acordo com uma ou mais condições. Você viu que, quando a condição não é satisfeita, a estrutura pode encerrar (estrutura de decisão simples) ou seguir outro caminho (estrutura composta).
Existem problemas, porém, em que uma expressão (ou uma variável) pode assumir diversos valores e que, para cada valor assumido, comandos diferentes são executados. Ou seja, os valores são mutuamente exclusivos.
Para essas situações, utilizamos as estruturas de múltipla escolha.
Imagine que você quer decidir o que vai fazer no final de semana. Veja:
algoritmo "opções"
VAR
opcao : Inteiro
INICIO
escreval("Digite '1': para praia")
escreval("Digite '2': para cinema")
escreval("Digite '3': para churrasco")
leia(opcao)
ESCOLHA opcao
CASO 1
escreva("Sair de casa às 8 horas da manhã.")
CASO 2
escreva("Sair de casa às 2 horas da tarde.")
CASO 3
escreva("Sair de casa ao meio-dia.")
OUTROCASO //caso escolha opção diferente das anteriores
escreva("Já que não optou, fique em casa mesmo e leia um livro.")
FIMESCOLHA
FIMALGORITMO
Ao tentar decidir o que fazer no fim de semana, você tinha três opções: ir à praia, ir ao cinema ou ir a um churrasco. Para cada opção, há um comando diferente (nesse caso, um horário diferente para sair de casa). Isso mostra que os comandos são, como dissemos, mutuamente exclusivos.
Veja que, caso você não escolha nenhuma das opções anteriores, há um comando definido por padrão (que, nesse caso, é ficar em casa e ler um livro).
A sintaxe da estrutura de múltipla escolha é a seguinte:
Inicio
escolha <opção>
caso <opção 1>
<comandos 1>
caso <opcao2>
<comandos 2>
...
caso <opção n>
<comandos n>
outrocaso
<comandos_padrão>
fimescolha
FimAlgoritmo
Versão 5.3 - Todos os Direitos reservados