• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Aula 10 - Comando de Decisão Múltipla e Comandos de Repetição
 

Aula 10 - Comando de Decisão Múltipla e Comandos de Repetição

on

  • 1,480 views

 

Statistics

Views

Total Views
1,480
Views on SlideShare
1,479
Embed Views
1

Actions

Likes
0
Downloads
28
Comments
0

1 Embed 1

http://www.teleduc.org.br 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Aula 10 - Comando de Decisão Múltipla e Comandos de Repetição Aula 10 - Comando de Decisão Múltipla e Comandos de Repetição Presentation Transcript

    • Aula 10 – Comando de DecisãoMúltipla e Comando de Repetição Prof. André Constantino da Silva LOGT1 – Lógica Noturno 18 de maio de 2012
    • Na aula anterior...• Resultados dos operadores matemáticos• Operadores - Relacionais - Lógicos• Comando de Decisão Múltipla
    • Nesta aula...• Comando de Decisão Múltipla• Comandos de Repetição
    • Comando de Decisão MúltiplaAlgumas situaçõesexigem a realizaçãode uma ação dentrevárias açõespossíveis, baseadono valor de umavariável (condição)- Estutura escolha
    • ExemploConsidere a seguinte classificação defaixa etária de atletas: Categoria Idade Infantil 5 a 10 anos Juvenil 11 a 15 anos Junior 16 a 20 anos Profissional 21 a 25 anos Não classificado Demais idadesComo seria um algortimo que leia a idadedo atleta e diga qual é a categoria desteatleta?
    • Resposta Usando conhecimentos aprendidosalgoritmo "categorias de atletas"var idade: inteiroinicio leia(idade) se (idade >= 5) e (idade <= 10) entao escreva("Atleta é da categoria Infantil") senao se (idade >= 11) e (idade <= 15) entao escreva("Atleta é da categoria Juvenil") senao se (idade >= 16) e (idade <= 20) entao escreva("Atleta é da categoria Junior") senao se (idade >= 21) e (idade <= 25) entao escreva("Atleta é da categoria Profissional") senao escreva("O atleta não pode ser classificado nas categorias") fimse fimse fimse fimsefimalgoritmo
    • Resposta – Usando Escolhaalgoritmo "categorias de atletas"var idade: inteiroinicio leia(idade) escolha idade caso 5, 6, 7, 8, 9, 10 escreva("Atleta é da categoria Infantil") caso 11, 12, 13, 14, 15 escreva("Atleta é da categoria Juvenil") caso 16, 17, 18, 19, 20 escreva("Atleta é da categoria Junior") caso 21, 22, 23, 24, 25 escreva("Atleta é da categoria Profissional") outrocaso escreva("O atleta não pode ser classificado nas categorias") fimescolhafimalgoritmo
    • Estrutura do Escolhaescolha <expressão-de-seleção> caso <valor1a>, <valor2a>, ..., <valorna> <comandos-a> caso <valor1b>, <valor2b>, ..., <valornb> <comandos-b> caso <valor1c>, <valor2c>, ..., <valornb> <comandos-c> ... outrocaso < comandos-x>fimescolha
    • ExercícioVamos classificar os alunos conforme afrequência na matéria Considerando que afrequência seja um número inteiro de 0 a10. Categoria Frequência Assíduo 10 Boa frequência 8 ou 9 Frequência regular 6 ou 7 Baixa frequência 3, 4 ou 5 Baixíssima frequência 0, 1 ou 2 Frequencia não pode ser <0Escreva um algoritmo que imprima a qual negativacategoriaque 0nãoaluno pertence.10 um pode ser Frequencia maior >
    • ExercícioAltere o algoritmo para a seguintesituação: Categoria Frequência Assíduo 9 < frequencia <= 10 Boa frequência 7 < frequencia <= 9 Frequência regular 5 < frequencia <= 7 Baixa frequência 2 < frequencia <= 5 Baixíssima frequência 0 <= frequencia <= 2 Frequencia não pode ser <0 negativa Frequencia não pode ser > 10 maior que 0
    • Quando usar qual?Todos são estruturas de condição• se-entao• se-entao-senao• escolha
    • Observem • Onde está a condição na estrutura?se <expressão-lógica-verdadeira> entao escolha <expressão-de-seleção> <comando(s)1> caso <valor1a>, <valor2a>, ...fimse <comandos-a> caso <valor1b>, <valor2b>, ... <comandos-b> caso <valor1c>, <valor2c>, ... <comandos-c> ...se <expressão-lógica-verdadeira> entao outrocaso <comando(s)1> < comandos-x>senao fimescolha <comando(s)2>fimse
    • Observem Quantas opções de comandos a executar existem?se <expressão-lógica-verdadeira> entao escolha <expressão-de-seleção> <comando(s)1> caso <valor1a>, <valor2a>, ...fimse <comandos-a> caso <valor1b>, <valor2b>, ... <comandos-b> caso <valor1c>, <valor2c>, ... <comandos-c> ...se <expressão-lógica-verdadeira> entao outrocaso <comando(s)1> < comandos-x>senao fimescolha <comando(s)2>fimse
    • Estrutura de Repetição
    • Estrutura de Repetição• Decidir e controlar quantas vezes uma ação (ou conjunto de ações) deve ser executada• Também chamadas de estruturas de iteração ou laços• Em Portugol, temos: - enquanto-faca - para-faca
    • Exemplo 1• Imprimir * cem vezes
    • Exemplo 1algoritmo " escreve_*_100_vezes"var i: inteiroinicioi <- 1enquanto i <= 100 faca escreval(“*”) i <- i+1fimenquantofimalgoritmo
    • Exemplo 2• Imprimir de 1 a 5
    • Exemplo 2algoritmo " escreve_numeros_1_a_5"var i: inteiroinicioi <- 1enquanto i <= 5 faca escreval(i) i <- i+1fimenquantofimalgoritmo
    • Estrutura de Repetição enquanto-facaenquanto <expressão-lógica-verdadeira> faca <seqüência-de-comandos>fimenquanto
    • Exemplo 3Faça um algoritmo que leia umnumero do usuário e só pare desolicitar o número somente quandoele digitar 1001
    • Exemplo 3algoritmo "digite1001"var numero: inteiroinicioenquanto (numero <> 1001) faca leia(numero)fimenquantofimalgoritmo
    • Exemplo 3Faça um algoritmo que leia umapalavra do usuário e pare desolicitar a palavra somente quandoele digitar sair
    • Exemplo 3algoritmo "digiteSair"var texto: caracterinicioenquanto (texto <> "sair") faca leia(texto)fimenquantofimalgoritmo
    • Exemplo 4• Escreva * a quantidade de vezes do usuário pedir
    • Exemplo 4algoritmo "escreva varias vezes"var quantidade, totalimpresso: inteiroinicio escreva("Digite a quantidade de vezes: ") leia(quantidade) totalimpresso <- 0 enquanto (totalimpresso <> quantidade) faca escreva("*") totalimpresso <- totalimpresso + 1 fimenquantofimalgoritmo
    • Exemplo 5• Leia um número inteiro positivo do usuário e escreva todos os números inteiros até o número escolhido
    • Exemplo 5algoritmo "escreva numeros inteiros"var numerodesejado, numeroatual: inteiroinicio escreva("Digite um numero inteiro: ") leia(numerodesejado) numeroatual <- 0 enquanto (numeroatual <> numerodesejado) faca escreva(numeroatual, " ") numeroatual <- numeroatual + 1 fimenquanto escreva(numeroatual, " ")fimalgoritmo
    • Exemplo 6• Calcular o n-ésimo elemento da sequência1, 3, 5, 7, 9, ...
    • 1, 3, 5, 7, 9, ...algoritmo "categorias de atletas"var indicedesejado, indice, numeroanterior, numeroatual:inteiroinicio indice <- 0 numeroanterior <- 0 numeroatual <- 1 leia(indicedesejado) enquanto (indice <> indicedesejado) faca numeroanterior <- numeroatual numeroatual <- numeroanterior + 2 indice <- indice + 1 escreva(numeroatual, " ") fimenquantofimalgoritmo