Prévia do material em texto
Algoritmos Universidade CEUMA ALG06 - LINGUAGEM ALGORÍTMICA - Estrutura Condicional – Múltipla Escolha Funções do VisuAlg 1 Funções do VisuAlg 2 Objetivo: permitir selecionar as instruções/ações diferentes que serão realizadas por meio do teste de um conjunto de valores discretos associados a esses valores. Consequências: há uma subordinação da execução de um ou mais comandos/instrução à satisfação da condição; desvia o fluxo de execução das instruções/comandos nem todas as instruções serão executadas, pois há a seleção das instruções. SELEÇÃO DE MÚLTIPLA ESCOLHA 3 Quando usar: Quando há a necessidade de testar alguma condição e em função da mesma tomar atitudes diferentes de acordo com o resultado deste teste. Particularidades: A condição é representada por uma variável, cujo conteúdo será testado. Esta variável pode conter, inclusive, o resultado de uma expressão; Na condição não admite-se o uso de operadores matemáticos, lógicos ou relacionais; Implicitamente testa-se apenas a igualdade. SELEÇÃO DE MÚLTIPLA ESCOLHA 4 SELEÇÃO DE MÚLTIPLA ESCOLHA Sintaxe: escolha <condicao> caso <opcaoA> <Comando1> caso <opcaoB> <Comando2> outrocaso //opcional <Comando3> fimescolha Fluxograma: Atenção! Entre os tokens caso podem ser escritos quaisquer comandos: E/S, atribuição, estruturas condicionais simples ou compostas e múltipla escolha ou repetição. 5 SELEÇÃO DE MÚLTIPLA ESCOLHA Funcionamento: A <condicao> é avaliada e um resultado gerado. Este resultado é comparado com cada um dos valores (rótulos das opções). A <condicao> deve representar apenas um único resultado a ser avaliado por meio de uma variável; Apenas um dos casos (opções) será executado; Caso o resultado da condição seja diferente de todos os rótulos, então será executado o comando outrocaso; O outrocaso funciona como se fosse um senao de todas as opções anteriores e não é obrigatório existir esta opção. Os rótulos podem conter mais de uma opção. 6 Múltipla Escolha: exemplo 1 7 Múltipla Escolha: exemplo 2 8 Múltipla Escolha: exemplo 3 9 Decisão Encadeada e Múltipla Escolha 10 Múltipla escolha e Decisão Encadeada São similares; Decisão Encadeada: Pode testar mais de um valor ao mesmo tempo. Ou seja, podem ser utilizadas expressões relacionais. Múltipla Escolha: Só pode testar igualdade e só testa um valor por vez, por isso, não pode utilizar expressões lógicas ou relacionais. Pode simplificar o uso da instrução se. Entre a utilização de uma ou outra estrutura pode haver um maior conjunto de instruções, o que implica no maior consumo de memória e mais tempo de processador, o que afeta diretamente o desempenho. Isto fica mais evidente em algoritmos mais complexos. 11 1) Faça um algoritmo que tendo como dados de entrada o preço de um produto e seu código de origem, mostre o preço junto de sua procedência. Caso o código não seja nenhum dos especificados, o produto deve ser encarado como importado. Tabela de códigos a seguir. Código de origem Procedência 1 Sul 2 Norte 3 Leste 4 Oeste 5 ou 6 Nordeste 7,8 ou 9 Sudeste 10 até 15 Centro oeste 16 até 20 Noroeste EXERCÍCIOS 12 2) Escreva um algoritmo que leia o código de um determinado produto e mostre a sua classificação. Utilize a seguinte tabela como referência: 3) Construa um algoritmo que leia um número de 1 a 12 e informa o trimestre do ano correspondente. Se o número não corresponder a um mês do ano, é exibida uma mensagem de erro. Código Classificação Validade 1 Alimento não perecível 1 ano 2,3 ou 4 Alimento perecível 3 dias 5 ou 6 Vestuário ---- 7 Higiene pessoal 3 anos Qualquer outro código Inválido ---- EXERCÍCIOS 13 4) Escreva um algoritmo que calcule o que deve ser pago por um produto, considerando o preço normal de etiqueta e a escolha da condição de pagamento. Deste modo, o vendedor deve informar o valor do produto e o código da condição de pagamento. Utilize os códigos da tabela a seguir para ler qual a condição de pagamento escolhida e efetuar o cálculo adequado e mostrar na tela o valor final: Código Condição de pagamento 1 À vista em dinheiro ou cheque, recebe 10% de desconto. 2 À vista no cartão de crédito, recebe 5% de desconto. 3 Em duas vezes, preço normal de etiqueta sem juros. 4 Em três vezes, preço normal de etiqueta mais juros de 2%. EXERCÍCIOS 14 5) Escreva um algoritmo que dada a idade de um nadador, classifique-o de acordo com as categorias: 6) Construa um algoritmo que leia um número de 1 a 7 e informa o dia da semana correspondente, sendo que o domingo corresponde ao número 1. Se o número não corresponder a um dia da semana, é exibida uma mensagem de erro. EXERCÍCIOS 15