Cursos / Informática para Internet / Lógica de Programação / Aula

arrow_back Aula 08 - Estruturas de Decisão Composta e de Múltipla Escolha – Se... Senão... Fim Se Escolha...Caso

Estruturas de Decisão de Múltipla Escolha

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:

x
1
algoritmo "opções"
2
3
VAR
4
opcao : Inteiro
5
6
INICIO
7
    escreval("Digite '1': para praia")
8
    escreval("Digite '2': para cinema")
9
    escreval("Digite '3': para churrasco")
10
    leia(opcao)
11
    ESCOLHA opcao
12
    CASO 1
13
        escreva("Sair de casa às 8 horas da manhã.")
14
    CASO 2
15
        escreva("Sair de casa às 2 horas da tarde.")
16
    CASO 3
17
        escreva("Sair de casa ao meio-dia.")
18
    OUTROCASO //caso escolha opção diferente das anteriores
19
        escreva("Já que não optou, fique em casa mesmo e leia um livro.")
20
    FIMESCOLHA
21
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:

Pseudocódigo

13
1
Inicio
2
    escolha <opção>
3
    caso <opção 1>
4
        <comandos 1>
5
    caso <opcao2>
6
        <comandos 2>
7
        ...
8
    caso <opção n>
9
        <comandos n>
10
    outrocaso
11
        <comandos_padrão>
12
    fimescolha
13
FimAlgoritmo

Fluxograma

Versão 5.3 - Todos os Direitos reservados