Você está na página 1de 2

Estrutura de Controle com Múltipla Escolha

O programa anterior apresenta a aplicação da técnica de programação estruturada, permitindo assim construir
programas mais elaborados. Porém, no tocante ao selecionamento das sub-rotinas foi utilizada a instrução se. Observe
que se o programa possuir um menu com 15 opções, deverão ser definidas 15 instruções do tipo se para verificar a
escolha do operador.
Quando houver a necessidade de construir um programa no qual seja necessário utilizar uma sequência grande
de instruções do tipo se, sejam estas uma após a outra ou mesmo encadeadas, poderá ser simplificado com a utilização
da estrutura escolha...fimescolha, que possui a seguinte sintaxe:

escolha <variável>
caso <valor 1>
<operação 1>
caso <valor 2>
<operação 2>
caso <valor N>
<operação N>
outrocaso
<operação>
Fimescolha

Em que <variável> será a variável a ser controlada, <valor> será o conteúdo de uma variável sendo verificado e
<operação> poderá ser a chamada de uma sub-rotina, a execução de qualquer operação matemática ou de qualquer
outra instrução.

Exemplo
algoritmo "Opções para calculadora"
// Função : Caso...escolha
// Autor : Edina
// Data : 16/08/2017
// Seção de Declarações
var
OPCAO: caracter
R, A, B : real
inicio
// Seção de Comandos
escreva("Entre um valor para A: ")
leia(A)
escreva("Entre um valor para B: ")
leia(B)

escreval("1 - Adição")
escreval("2 - Subtração")
escreval("3 - Multiplicação")
escreval("4 - Divisão")
escreval("5 - Fim do programa")
escreval("Escolha uma opcao: ")
escreva("Entre uma opcao ")
leia (OPCAO)

ESCOLHA OPCAO
caso "1"
r<-a+b
escreval (r)

caso "2"
r<-a-b
escreval (r)

caso "3"
r<-a*b
escreval (r)

caso "4"
r<-a/b
escreval (r)

CASO "5"
fimalgoritmo
outrocaso
escreval("Opção inválida - Tente novamente.")
fimescolha

fimalgoritmo

Você também pode gostar