Programação I Aula 07 Autor: Francisco Airton Professor: André L. R. Didier 1 Objetivos • Apresentar as estruturas de repetição • Apresentar a estrutura de repetição “enquanto” 2 Enquanto • Nesta estrutura, uma expressão lógica é avaliada. Se a mesma for verdadeira, uma lista de comandos será executada • A execução da lista se repetirá até que a avaliação da condição resulte em FALSO 3 Ideia com Fluxograma Condição Executar algo verdadeiro falso 4 Ideia com Fluxograma Media > 7 Escreva (você ainda está na média) verdadeiro falso 5 Enquanto • Forma geral: ENQUANTO (condição) FAZ // Instruções FIMENQUANTO 6 Exemplo • Faça um algoritmo que lê diversos números positivos e escreve o dobro de cada um. Quando um número negativo for digitado, o algoritmo deverá parar de ler números. 7 inicio inteiro numero <- 0, dobro escrever "Digite um número: " ler numero enquanto numero >= 0 faz dobro <- numero * 2 escrever "O dobro é: ", dobro, "\n" escrever "Digite um número: " ler numero fimenquanto fim 8 Exemplo • Usando a instrução ENQUANTO, faça um algoritmo que escreve os números entre 1 e 10 (incluindo‐os). 9 inicio inteiro numero numero <‐ 1 enquanto (numero <= 10) faz escrever numero, “\n” numero <‐ numero + 1 fimenquanto fim 10 Estruturas de Repetição • Enquanto...faz • Atenção: Cuidado com laços infinitos! Devemos nos certificar que em algum momento a expressão lógica próxima a palavra reservada enquanto será FALSA! 11 Estruturas de Repetição • Exemplo ‐ Algoritmo com laço infinito: inicio inteiro contador enquanto (contador < 10) faz DO MAL ! contador <‐ 1 escrever contador contador <‐ contador + 1 fimenquanto fim 12 • Dê outro exemplo semelhante ao anterior de laço infinito.... 13 Exercícios • Faça um algoritmo que receba números inteiros e, enquanto números positivos forem digitados, verifica se cada número é menor que 5 (escrevendo uma mensagem afirmando o referido fato); 14 inicio inteiro numero escrever “Digite um número:” Ler numero enquanto numero >= 0 faz Se numero < 5 entao escrever “O número digitado é menor que 5!” fimSe escrever “Digite um número:” ler numero fimEnquanto fim 15 Exercícios • Faça um algoritmo que lê a idade de várias pessoas, até que uma idade negativa seja digitada. O algoritmo deverá calcular e exibir a quantidade de pessoas, de acordo com as faixas etárias apresentadas na tabela abaixo: 16 Inicio inteiro idade, faixa1, faixa2, faixa3 escrever “Digite sua idade:” ler idade enquanto (idade >= 0) faz se (idade <= 15) entao faixa1 <‐ faixa1 + 1 fimSe se (idade >= 16) E (idade <= 30) entao faixa2 <‐ faixa2 + 1 fimSe SE (idade > 30) entao faixa3 <‐ faixa3 + 1 fimSe escrever “Digite sua idade: ” ler idade fimEnquanto escrever “Quantidade de pessoas na faixa 1: ”, faixa1, “\n” escrever “Quantidade de pessoas na faixa 2: ”, faixa2, “\n” escrever “Quantidade de pessoas na faixa 3: ”, faixa3, “\n” fim 17 Exercícios • Faça um algoritmo que receba vários números inteiros (enquanto o número ‐100 não for digitado). O mesmo deverá exibir o maior número digitado; 18 Explore o assunto!