Estruturas de decisão encadeada e múltipla escolha
Estrutura de decisão encadeada Pseudocódigo: Se <expr1> então <comandos 1> senão Se <expr 2> então <comandos 2> senão <com...
Exercício 1 Algoritmo para ler a idade digitada pelo usuário e apresentar a categoria esportiva correspondente, conforme a...
Exercício 2 O  índice de massa corporal  ( IMC ) avalia o nível de gordura de cada pessoa e é adotado pela Organização Mun...
Estrutura de múltipla escolha Utilizada quando o resultado de uma expressão pode assumir diversos valores, sendo que coman...
Escolha/caso - Pseudocódigo Escolha (<expressão>) caso 1: <comandos> caso 2: <comandos> ... caso contrário: <comandos> Fim...
Exemplo 1 - pseudocódigo <ul><li>Algoritmo  DemoEscolha </li></ul><ul><li>InícioAlgoritmo </li></ul><ul><li>declarar  mes ...
Comando  switch  em Java <ul><li>switch ( <expressão inteira ou char> ) </li></ul><ul><li>{ </li></ul><ul><li>case  <expr ...
Exemplo 1 - Java <ul><li>Import javax.swing.JOPtionPane; </li></ul><ul><li>public class DemoSwitch </li></ul><ul><li>{ </l...
Exemplo 2 - pseudocódigo <ul><li>Algoritmo  Dado </li></ul><ul><li>InícioAlgoritmo </li></ul><ul><li>declarar  num numéric...
Exemplo 2 - Java <ul><li>Import javax.swingt.JOptionPane; </li></ul><ul><li>public class Dado </li></ul><ul><li>{ </li></u...
Múltipla escolha x decisão encadeada <ul><li>A sintaxe da estrutura de múltipla escolha é mais concisa (enxuta, simples) <...
Exercício 1 <ul><li>Escrever um programa em Java para apresentar o nome do lanche do MacDonalds conforme o nº da opção dig...
Exercício 2 <ul><li>Elaborar um algoritmo em pseudocódigo e o programa em Java correspondente para imprimir o número de di...
Upcoming SlideShare
Loading in...5
×

Algoritmos Aula 07

6,696

Published on

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
6,696
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
116
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Algoritmos Aula 07

  1. 1. Estruturas de decisão encadeada e múltipla escolha
  2. 2. Estrutura de decisão encadeada Pseudocódigo: Se <expr1> então <comandos 1> senão Se <expr 2> então <comandos 2> senão <comandos 3> FimSe FimSe Java: if (expr1) { <comandos 1> } else if (expr2) { <comandos 2> } else { <comandos 3> }
  3. 3. Exercício 1 Algoritmo para ler a idade digitada pelo usuário e apresentar a categoria esportiva correspondente, conforme a tabela abaixo:
  4. 4. Exercício 2 O índice de massa corporal ( IMC ) avalia o nível de gordura de cada pessoa e é adotado pela Organização Mundial de Saúde (OMS). O IMC de uma pessoa é dado pela divisão da massa em kg pela altura em metros. Elabore um algoritmo que, a partir da massa e da altura informados pelo usuário, calcule e apresente seu IMC e sua classificação conforme a tabela seguinte: IMC Classificação < 18 Magreza 18,0 a 24,9 Saudável 25,0 a 29,9 Sobrepeso >= 30,0 Obesidade
  5. 5. Estrutura de múltipla escolha Utilizada quando o resultado de uma expressão pode assumir diversos valores, sendo que comandos distintos devem ser executados em cada caso.
  6. 6. Escolha/caso - Pseudocódigo Escolha (<expressão>) caso 1: <comandos> caso 2: <comandos> ... caso contrário: <comandos> FimEscolha;
  7. 7. Exemplo 1 - pseudocódigo <ul><li>Algoritmo DemoEscolha </li></ul><ul><li>InícioAlgoritmo </li></ul><ul><li>declarar mes numérico_inteiro; </li></ul><ul><li>Ler(mes); </li></ul><ul><li>Escolha (mes) </li></ul><ul><li>caso 1: Escrever(“Janeiro”); </li></ul><ul><li>caso 2: Escrever(“Fevereiro”); </li></ul><ul><li>... </li></ul><ul><li>caso 12: Escrever(“Dezembro”); </li></ul><ul><li>caso contrário: Escrever(“Mês inválido”); </li></ul><ul><li>FimEscolha </li></ul><ul><li>FimAlgoritmo . </li></ul>
  8. 8. Comando switch em Java <ul><li>switch ( <expressão inteira ou char> ) </li></ul><ul><li>{ </li></ul><ul><li>case <expr constante 1> : bloco; break; </li></ul><ul><li>case <expr constante 2> : bloco; break; </li></ul><ul><li>case <expr constante 3> : bloco; break; </li></ul><ul><li>... </li></ul><ul><li>case <expr constante n> : bloco; break; </li></ul><ul><li>default: bloco; break; </li></ul><ul><li>} </li></ul>
  9. 9. Exemplo 1 - Java <ul><li>Import javax.swing.JOPtionPane; </li></ul><ul><li>public class DemoSwitch </li></ul><ul><li>{ </li></ul><ul><li>public static void main(String args[]) </li></ul><ul><li>{ </li></ul><ul><li>int mes = Integer.parseInt( </li></ul><ul><li>JOptionPane.showInputDialog(“Digite o mês”)); </li></ul><ul><li>switch (mes) </li></ul><ul><li>{ </li></ul><ul><li>case 1: System.out.println(“Janeiro”); break; </li></ul><ul><li>case 2: System.out.println(“Fevereiro”); break; </li></ul><ul><li>... </li></ul><ul><li>case 12: System.out.println(“Dezembro”); break; </li></ul><ul><li>default: System.out.println(“Mês inválido”); break; </li></ul><ul><li>} </li></ul><ul><li>} </li></ul><ul><li>} </li></ul>
  10. 10. Exemplo 2 - pseudocódigo <ul><li>Algoritmo Dado </li></ul><ul><li>InícioAlgoritmo </li></ul><ul><li>declarar num numérico_inteiro; </li></ul><ul><li>Ler(num); </li></ul><ul><li>Escolha (num) </li></ul><ul><li>caso 2, 4, 6: Escrever(“Par”); </li></ul><ul><li>caso 1, 3, 5: Escrever(“Ímpar”); </li></ul><ul><li>FimEscolha </li></ul><ul><li>FimAlgoritmo . </li></ul>
  11. 11. Exemplo 2 - Java <ul><li>Import javax.swingt.JOptionPane; </li></ul><ul><li>public class Dado </li></ul><ul><li>{ </li></ul><ul><li>public static void main(String args[]) </li></ul><ul><li>{ </li></ul><ul><li>int num = Integer.parseInt( </li></ul><ul><li>JOptionPane.showInputDialog(“Digite um número”)); </li></ul><ul><li>switch (num) </li></ul><ul><li>{ </li></ul><ul><li>case 2: </li></ul><ul><li>case 4: </li></ul><ul><li>case 6: System.out.println(“par”); break; </li></ul><ul><li>case 1: </li></ul><ul><li>case 3: </li></ul><ul><li>case 5: System.out.println(“Ímpar”); break; </li></ul><ul><li>} </li></ul><ul><li>} </li></ul><ul><li>} </li></ul>
  12. 12. Múltipla escolha x decisão encadeada <ul><li>A sintaxe da estrutura de múltipla escolha é mais concisa (enxuta, simples) </li></ul><ul><li>A estrutura de múltipla escolha é mais limitada que a estrutura encadeada, pois não é adequada para trabalhar com faixas contínuas ou largas de valores e, também, serve para testar apenas uma expressão por vez. </li></ul>
  13. 13. Exercício 1 <ul><li>Escrever um programa em Java para apresentar o nome do lanche do MacDonalds conforme o nº da opção digitada pelo cliente (usuário): </li></ul><ul><ul><li>1. BigMac </li></ul></ul><ul><ul><li>2. Quarteirão </li></ul></ul><ul><ul><li>3. MacChicken </li></ul></ul><ul><ul><li>4. Cheddar MacMelt </li></ul></ul><ul><ul><li>5. MacMax </li></ul></ul><ul><li>O programa deverá apresentar ao usuário o menu de opções disponíveis e deverá informar caso seja digitada uma opção inválida. </li></ul>
  14. 14. Exercício 2 <ul><li>Elaborar um algoritmo em pseudocódigo e o programa em Java correspondente para imprimir o número de dias de um dado mês e ano. Anos bissextos deverão ser tratados convenientemente. </li></ul><ul><li>Dica: Anos bissextos são múltiplos de 4 e não são múltiplos de 100, exceto os anos múltiplos de 400, que também são bissextos. </li></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×