Buscar

Aula 11 - Estrutura Condicional de Multipla Escolha

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1 
 
FACULDADE DE COMPUTAÇÃO E INFORMÁTICA 
BACHARELADOS EM CIÊNCIA DA COMPUTAÇÃO E SISTEMAS DE INFORMAÇÃO E 
TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS 
Introdução à Programação – Aula 11 
 
 
TEORIA: ESTRUTURA CONDICIONAL DE MÚLTIPLA ESCOLHA 
 
 
 
Nossos objetivos nesta aula são: 
 
 Continuar construindo algoritmos com desvio de fluxo. 
 Utilizar comandos de seleção de casos para desvios de fluxo 
com múltiplas possibilidades. 
 
 
 
 
A referência para esta aula é o Capítulo 7 (Estrutura Condicional – 
aninhadas, seleção de casos e outras formas, páginas 174 a 198) do 
nosso livro-texto: 
 
Piva Jr., D. et al. Algoritmos e Programação de Computadores. Rio de 
Janeiro: Elsevier, 2012. 
 
Não deixem de ler este capítulo após a aula de hoje! 
 
 
 Em aulas anteriores, vimos estruturas condicionais simples e compostas, que permitem 
que o fluxo de execução de um algoritmo possa sofrer desvios, definindo a sequência de 
instruções a serem executadas, dependendo do resultado lógico da condição ser 
verdadeiro ou falso. 
 
 Em alguns casos podemos usar uma seleção que faz escolhas a partir de uma lista de 
opções. 
 
 A comparação é feita somente no caso de igualdade, porém podemos listar uma série 
de valores para comparação e, a partir de um deles, quando igual, executar um 
comando ou um bloco de comandos. 
 
 Em muitos casos ele é preferido pelos programadores no lugar do comando condicional 
se, pelo aspecto visual e de organização que proporciona ao algoritmo ou programa. 
 
2 
 
 Por exemplo, vamos considerar a seguinte situação: você recebe a média (número 
inteiro) de um aluno e quer classificá-la com as seguintes faixas: 
 
 se a média for 10, vamos imprimir “com louvor” 
 se a média for menor do que 10 e maior ou igual a 8, vamor imprimir “com mérito” 
 e, se for menor do que 8 e maior ou igual a 6, vamos imprimir “com destaque” 
 se for menor do que 6 e maior ou igual a 5, não vamos imprimir nada 
 se for menor do que 5, vamos imprimir “reprovado” 
 
 Um possível fluxograma para esta situação é mostrado abaixo: 
 
 
 
3 
 
 
 Um pseudocódigo possível para este fluxograma é mostrado abaixo: 
 
se média >= 5 
 então se média = 10 
 então escreva “aprovado com louvor” 
 senão se média >=8 
 então escreva “aprovado com mérito” 
 senão se média >= 6 
 então escreva “aprovado com destaque” 
 fimse 
 fimse 
 fimse 
 senão escreva “reprovado” 
fimse 
 
 Não é difícil se convencer que este código fica bastante confuso de se acompanhar com 
tantas decisões. Observe que há decisões dentro de decisões. Isto é chamado de 
decisões aninhadas, que veremos com maior detalhe na próxima aula. Para facilitar 
todas estas escolhas, podemos utilizar o comando de seleção, cuja sintaxe é a seguinte: 
 
escolha <expressão-de-seleção> 
 caso1 <exp1_1>, <exp1_2>, ..., <exp1_n> : <sequência-de-comandos-1> 
 caso2 <exp2_1>, <exp2_2>, ..., <exp2_n> : <sequência-de-comandos-2> 
 ... 
 outrocaso : <sequência-de-comandos-extra> 
fimescolha 
 
 
 o bloco do comando de seleção começa com a palavra-chave escolha e termina com 
fimescolha; 
 a expressão de seleção é uma variável e deve ser apenas um dos tipos: caractere ou 
inteiro. A partir dela é feita a escolha de um dos casos a ser executado; 
 como regra geral, uma vez escolhido um caso e executado o comando ou uma 
sequência de comandos associado ao caso, os demais não serão executados; 
 a palavra-chave outrocaso será escolhida se nenhum dos casos listados 
anteriormente atender à escolha. Ele não precisa ser utilizado se o problema não 
exigir. 
 Assim, utilizando o comando de seleção, nosso algoritmo fica mais simplificado para a 
seguinte versão: 
4 
 
 
escolha média 
 caso 10: escreva “aprovado com louvor” 
 caso 8,9: escreva “aprovado com mérito” 
 caso 6,7: escreva “aprovado com destaque” 
 caso 5: escreva “aprovado” 
 outrocaso: escreva “reprovado” 
fimescolha 
 
 
EXERCÍCIO TUTORIADO 
 
Construa um algoritmo na notação de pseudocódigo que leia o conceito de um filme e exiba 
sua classificação conforme a seguinte tabela: 
 
Conceito Classificação 
5 Ótimo 
4 Bom 
3 Regular 
2 Ruim 
1 Péssimo 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5 
 
 
EXERCÍCIO COM DISCUSSÃO EM DUPLAS 
 
Construa um algoritmo na notação de pseudocódigo para construir uma calculadora simples, 
com apenas as quatro operações aritméticas: +, -, *, /. Você deve receber dois números reais e 
a operação que deverá ser executada e apresentar o resultado da operação desejada. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 A implementação da estrutura condicional de múltipla escolha em VisuAlg é semelhante a 
sintaxe em pseudocódigo, apenas retirando o “:” após <exp_n>. 
 
 Na linguagem Java, a sintaxe é a seguinte: 
 
switch (expressão-de-seleção) { 
 case constante1: 
 sequência-de-comandos; 
 break; 
 case constante2: 
 sequência-de-comandos; 
 break; 
 ... 
 default: 
 sequência-de-comandos; 
} 
 
 Sendo que a expressão-de-seleção deve estar dentro de um parênteses e pode ser qualquer 
expressão válida. 
 
 o bloco de comandos deve estar entre chaves “{ }”; 
6 
 
 
 é necessário o uso da palavra case em cada um dos casos listados; 
 
 A declaração default é opcional e será executada apenas se a variável, que está sendo 
testada, não for igual a nenhuma das listadas anteriormente. Se não estiver presente, 
nenhuma ação será realizada se todas as correspondências falharem; 
 
 as constantes listadas nos casos devem ser seguidas de dois-pontos “:”; 
 
 a palavra-chave break marca o final de um caso e, na sua ausência, será executado o caso 
seguinte, até encontrar um break ou o fim do bloco de comandos. 
 
 
EXERCÍCIO TUTORIADO 
Construa um programa em Java que leia o conceito de um filme e exiba sua classificação 
conforme a seguinte tabela: 
 
Conceito Classificação 
5 Ótimo 
4 Bom 
3 Regular 
2 Ruim 
1 Péssimo 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7 
 
 
EXERCÍCIO COM DISCUSSÃO EM DUPLAS 
 
Escreva um programa em Java para construir uma calculadora simples, com apenas as quatro 
operações aritméticas: +, -, *, /. Você deve receber dois números e a operação que deverá ser 
executada e apresentar o resultado da operação desejada. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8 
 
ATIVIDADES DE LABORATÓRIO 
 
Escreva um programa em VisuAlg que solicite o ano de casamento, o ano atual e escreva as 
seguintes mensagens, para os seguintes casos: 25 anos – “Bodas de Prata”; 50 anos – “Bodas de 
Ouro” e 75 anos – “Bodas de Diamante”. Nos casos restantes escrever apenas o número de 
anos de casados. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Implemente o seu programa também em Java: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9 
 
ATIVIDADES DE LABORATÓRIO 
 
Construir um programa em VisuAlg que faz a leitura de três números inteiros, representando 
uma data (dd mm aaaa). Exibir a data, onde o mês é escrito por extenso. Exemplo: leitura da 
data 31 3 2013; exibe: 31 de março de 2013.Implemente o seu programa também Java: 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
10 
 
 
EXERCÍCIOS EXTRA-CLASSE 
 
1. Escreva um programa em VisuAlg e em Java que receba dois números, execute e mostre o 
resultado das operações listadas a seguir de acordo com a escolha do usuário. 
 
Opção Operação 
1 Média entre os números digitados 
2 Diferença do maior pelo menor 
3 Produto entre os números digitados 
4 Divisão do primeiro pelo segundo 
 
Se a opção digitada for inválida, mostrar uma mensagem de erro e encerrar a execução do 
programa. Lembre-se de que, na opção 4, o segundo número deve ser diferente de zero. 
 
2. Faça um programa em VisuAlg e em Java que, ao receber como entrada o tipo do voo (“N” 
para noturno / ”D” para diurno) e a quantidade de pessoas, calcule e exiba a tarifa e o total 
a pagar de acordo com as condições abaixo: 
 
Tipo de Voo Quantidade Tarifa 
Diurno 
<= 50 R$ 200,00 
> 50 R$ 120,00 
Noturno 
<= 50 R$ 100,00 
> 50 R$ 80,00 
Total a pagar = quantidade de pessoas x tarifa 
 
3. Escreva um programa em VisuAlg e em Java que leia o custo em Reais de uma compra 
internacional e o tipo de moeda (1, 2 ou 3), sendo: 
1 - dólar americano 
2 - euro 
3 - libra esterlina 
Mostre o tipo de moeda escolhido (dólar americano, euro ou libra esterlina) e o valor da 
transformação na moeda escolhida, conforme as cotações a seguir: 
 
Moeda Cotação (R$) 
Dólar 1,91 
Euro 2,50 
Libra 2,84

Outros materiais