Baixe o app para aproveitar ainda mais
Prévia do material em texto
Comando Caso • A estrutura de condição equivale a um ninho de SE’S. • Útil em situações onde há necessidade de se testar uma mesma variável ou expressão que possa conter diversos valores, executando comandos diferentes para valores diferentes. Comando Caso • Testando intervalos com o comando caso: • – 1,3 – valores inteiros 1 ou 3 • – ‘A’ .. ‘Z’ – caracteres de ‘A’ a ‘Z’ • – 1,3, 12..21 – inteiros 1 e 3 e de 12 a 21 caso <variável> seja <valor1> : <instrução>; <valor2> : <instrução>; ... <valorn> : <instrução>; outroscasos <instrução>; fimcaso A Estrutura CASO Exemplo 1 • Faça um algoritmo que leia um número representando um determinado mês do ano. Após a leitura escreva por extenso qual o mês lido. Caso o número informado não esteja na faixa de 1..12 escreva uma mensagem informando o usuário do erro. Solução algoritmo meses; variaveis mes:inteiro; inicio escreva (“Informe um mes no formato mm”); leia (mes); caso (mes) seja 01 : escreva(“janeiro”); 02 : escrever (“fevereiro”); 03 : escreva(“março”); ... outroscasos escreva (“mês inválido”); fimcaso; \\ existe muitas variações por exemplo fimescolha fim. Exemplo 2 • Ler o número referente a um dia da semana e imprimir a mensagem ‘Dia Útil’ ou ‘Fim-de- Semana’, considerando que 1 = domingo, 2 = segunda-feira, etc... Nome dia_da_semana variaveis cod_dia : inteiro Inicio escreva(“favor informar um valor”); leia(cod_dia); caso (cod_dia) seja 2 .. 6: escreva(“Dia Útil”); 1, 7: escreva(“Fim-de-Semana”); outroscasos escreva(“Dia inválido”); fimcaso fim Exemplo 3 • A tabela a seguir mostra o preço de doces da Padaria “Pão Quente”: • Faça um algoritmo que o cliente escolha um produto, o tamanho e a quantidade do mesmo e apresente o valor total a ser pago. R$ 2,10 R$ 3,00 ‘N’ - Normal ‘G’ - Grande Trufa04 R$ 1,40 R$ 1,90 ‘N’ - Normal ‘G’ – Grande Cajuzinho03 R$ 1,50 R$ 2,00 ‘N’ - Normal ‘G’ – Grande Beijinho02 R$ 1,55 R$ 2,10 ‘N’ - Normal ‘G’ – Grande Brigadeiro01 PreçoTamanhoProdutoCódigo Nome ‘padaria’; variaveis codigo, quantidade : inteiro; tamanho : caractere; preco : real; preco_total : real; Inicio leia(codigo); leia(quantidade); leia(tamanho); CASO (código) SEJA 1 : se (tamanho = ‘N’) entao preco 1.55; senao preco 2.10; fimse 2 : se (tamanho = ‘N’) entao preco 1.50; senao preco 2.00; fimse 3: se (tamanho = ‘N’) entao preco 1.40; senao preco 1.90; fimse 4: se (tamanho = ‘N’) entao preco 2.10; senao preco 3.00; fimse OUTROSCASOS escreva (“Codigo de produto invalido”); FIMCASO Preco_total quantidade * preco; escreval(quantidade, “ unidades de”, codigo, “custa”, preco_total); FIM Exercício • Leia um número inteiro (suponha o número sendo maior que 0), caso ele seja par realize as seguintes operações: – Escreva “O número xx é par” – Encontre seu sucessor par – Escreva “Seu sucessor par é yy” – Informe se o sucessor é ou não divisível por 3 • Caso o número informado não seja par, apenas escreva “O número xx é ímpar” Solução algoritmo numero; variaveis num, sucessor : inteiro; Inicio escreva(“favor informar um número maior que 0:”); ler num; se (num % 2 = 0) entao escrever (“O número”,num, “é par.”); sucessor num + 2; escrever (“Seu sucessor par é”,sucessor); se (sucessor % 3 = 0) entao escrever (“Sucessor Divisível por 3”); senao escrever (“Sucessor Não Divisível por 3”); fim-se; senao escrever (“O número”,num, “é ímpar”; fim-se; fim. Exercício • Entrar com a distância percorrida (Km) e a quantidade de combustível (Litros) gasto. Depois informe quantos quilômetros são percorridos por litro. Sabendo que um carro econômico percorre 15Km/l, diga se o veículo em questão é econômico ou não. Solução algoritmo media_combustivel; variaveis distancia, litros, km_litros : real; Inicio escreval(“Informe distância percorida:”); leia(distancia); escreval(“Combustível gasto:”); leia(litros); km_litros distancia/litros; se km_litros >= 15 entao escreva(“veículo Econômico.”); senao escreva (“Veículo não Econômico.”); fim-se; fim. Exercício • Um depósito de doces tem a seguinte tabela de preços para suas balas: QUANTIDADE PREÇO UNITÁRIO <= 50 R$ 0,30 51 a 100 (inc) R$ 0,25 101 a 200 (inc) R$ 0,22 201 a 400 (inc) R$ 0,17 > 400 R$ 0,15 • Faça um algoritmo para ler a quantidade de balas de uma compra e exibir o valor a pagar pelo cliente Solução algoritmo compra_balas; variaveis qtdade:inteiro; inicio ler (qtdade); se (qtdade >= 0) entao caso qtdade seja 1..50: escrever qtdade * 0.30; 51..100: escrever qtdade * 0.25; 101..200: escrever qtdade * 0.22; 201..400: escrever qtdade * 0.17; outroscasos escrever qtdade * 0.15; fim-caso; senão escrever (“Quantidade Inválida!”); fimse; fim. A nota final de um estudante é calculada a partir de três notas atribuídas respectivamente a um trabalho de laboratório, a uma avaliação semestral e a um exame final. A média das três notas mencionadas anteriormente obedece aos pesos a seguir: • Trabalho de laboratório peso 2 • Avaliação semestral peso 3 • Exame final peso 5 Faça um programa que receba as três notas, calcule e mostre a média ponderada e o conceito que segue a tabela abaixo: Obs: O Caso não aceita comparação com variável real, apenas inteira, então use o comando trunc para utilizar apenas a parte inteira da média. Trunc(x) - Retorna o valor de x com a parte decimal removida.
Compartilhar