Baixe o app para aproveitar ainda mais
Prévia do material em texto
14/04/2015 1 Aula 7 Prof. Dr. Engo. Carlos A. Sicsú A. do Nascimento caugusto.sicsu@uva.br Curso de Engenharia Objetivos O aluno deverá ser capaz de: · Utilizar o comando alternativo para estrutura de decisão com múltiplas opções: escolha; · Identificar quais algoritmos estão aptos ao uso desse comando alternativo; · Resolver exercícios que necessitem do uso de estruturas de decisão com múltiplas opções: escolha. 14/04/2015 Prof. Dr. Engº Carlos A. Sicsú A. do Nascimento 2 14/04/2015 2 Estrutura de decisão com o comando escolha: O comando escolha é utilizado para simplificar o algoritmo quando existe a necessidade de se usar o comando se com múltiplas opções. Esse comando pode ser utilizado somente em determinadas situações. Algumas linguagens de programação permitem que sejam usadas condições distintas para a definição da escolha, mas nas linguagens de programação baseadas na linguagem C, tais como java, C#, etc, a estrutura escolha deve ser controlada por uma variável inteira ou do tipo caractere (um único caractere). No exemplo a seguir, temos um conjunto de decisões utilizando a estrutura se e determinadas pela igualdade, que podem ser facilmente substituídas pelo uso do comando escolha. 14/04/2015 Prof. Dr. Engº Carlos A. Sicsú A. do Nascimento 3 se (COND = 1) entao escreva (“Matemática”) senao se (COND = 2) entao escreva (“Português”) senao se (COND = 3) entao escreva (“Física”) senao se (COND = 4) entao escreva (“Biologia”) senao escreva (“Química”) fimse fimse fimse fimse 14/04/2015 Prof. Dr. Engº Carlos A. Sicsú A. do Nascimento 4 Observe que todas as condições são de comparação com a igualdade e sempre utilizam a mesma variável para o controle. 14/04/2015 3 Para esse tipo de problema, existe uma forma de simplificação utilizando o comando escolha, mas para que seja possível utilizá- la, alguns detalhes são importantes: · Todas as condições dos comandos se devem testar a mesma variável, no caso é sempre testada a variável COND; · Todas as condições dos comandos se devem testar a igualdade da variável com um determinado valor: COND = N; · Todo comando se (exceto o primeiro) encontra-se no lado “N” (não, ou falsidade, ou seja, no senao) do comando se anterior. Se todas essas condições forem satisfeitas, é possível substituir o conjunto de comandos se aninhados pelo comando escolha. 14/04/2015 Prof. Dr. Engº Carlos A. Sicsú A. do Nascimento 5 Pseudocódigo algoritmo "Escolha" var cond : inteiro inicio escreva("O que você deseja fazer hoje (1-Matemática 2-Português 3-Física 4-Biologia 5- Química)") leia(cond) escolha (cond) caso 1 escreva(“Matemática") caso 2 escreva(“Português") caso 3 escreva(“Física") caso 4 escreva(“Biologia") outrocaso // Se não foi identificada nenhuma opção anterior essa é executada escreva(“Química") fimescolha fimalgoritmo14/04/2015 Prof. Dr. Engº Carlos A. Sicsú A. do Nascimento 6 14/04/2015 4 Pseudocódigo algoritmo "Escolha" var opc : inteiro inicio escreva("O que você deseja fazer hoje (1-Cinema 2-Praia 3-Piscina 4-Restaurante)") leia(opc) escolha (opc) caso 1 escreva("Você escolheu ir ao Cinema") caso 2 escreva("Você escolheu ir a Praia") caso 3 escreva("Você escolheu ir a Piscina") caso 4 escreva("Você escolheu ir ao Restaurante") outrocaso // Se não foi identificada nenhuma opção anterior essa é executada escreva("Você não fez uma escolha válida") fimescolha fimalgoritmo 14/04/2015 Prof. Dr. Engº Carlos A. Sicsú A. do Nascimento 7 O Algoritmo pode também identificar mais de uma opção válida para uma mesma ação, simulando logicamente o uso do OU. algoritmo "EscolhaMes" var mes, numeroDias : inteiro inicio escreva("Indique o número do mês (1-12)") leia(mes) escolha (mes) caso 2 numeroDias <- 28 caso 4, 6, 9, 11 numeroDias <- 30 caso 1, 3, 5, 7, 8, 10, 12 numeroDias <- 31 outrocaso // Se não foi identificada nenhuma opção anterior essa é executada escreval("Você não fez uma escolha de mês válido.") fimescolha escreval("Este mês possui ", numeroDias) fimalgoritmo 14/04/2015 Prof. Dr. Engº Carlos A. Sicsú A. do Nascimento 8 14/04/2015 5 Exercícios 1. Faça um algoritmo que receba o consumo mensal (em KW/h) e o tipo de cliente de uma empresa fornecedora de energia elétrica, calcule e apresente o valor a ser pago pelo cliente, de acordo com a tabela abaixo: Tipo de Cliente Valor do KW/h 1 (Residencial) R$ 0,68 2 (Comercial) R$ 0,98 3 (Industrial) R$ 1,19 14/04/2015 Prof. Dr. Engº Carlos A. Sicsú A. do Nascimento 9 2. Faça um algoritmo que receba o valor de um salário e a faixa salarial de um funcionário, calcule o aumento correspondente, de acordo com a tabela a seguir e ao final apresente o salário reajustado: 14/04/2015 Prof. Dr. Engº Carlos A. Sicsú A. do Nascimento 10 Faixa Salarial Percentual de aumento (%) 1 8,0 2 7,6 3 7,2 4 7,0 5 6,7 6 6,3 7 6,0 8 5,5 Demais faixas 5,0 14/04/2015 6 3. Faça um algoritmo que receba a idade de um nadador, classifique-o em de acordo com uma das categorias a seguir e apresente a categoria correspondente: Obs.: Use a simulação do OU para as faixas. 14/04/2015 Prof. Dr. Engº Carlos A. Sicsú A. do Nascimento 11 Faixa de Idade Categoria 5 - 7 Infantil A 8 - 10 Infantil B 11 – 13 Juvenil A 14 – 17 Juvenil B 18 - 25 Sênior Demais idades Fora das faixas possíveis FIM da Aula 7 14/04/2015 Prof. Dr. Engº Carlos A. Sicsú A. do Nascimento 12
Compartilhar