AULA 08 OBJETIVO: Estruturas de repetição. HABILIDADES TRABALHADAS: Desenvolver algoritmos utilizando laços a partir da leitura de fluxogramas ou algoritmos em portugol. ESTRUTURA DE REPETIÇÃO ENQUANTO...FACA A instrução de repetição enquanto... faca permite a execução de seu bloco de repetição um número de vezes fixado por uma lógica adequada a solução de um problema computacional ou ainda a quantidade de vezes que seu usuário desejar, sendo ele responsável pelo controle de quantas vezes este bloco de repetição poderá ser executado. FORMA GERAL DE SINTAXE - ENQUANTO...FACA enquanto (<teste_condicional>) faca bloco de repetição fimenquanto • enquanto, faca e fimenquanto - são palavras reservadas <teste_condicional> - expressão relacional que resultará em um dado lógico (verdadeiro ou falso), indicando se o bloco de repetição será executado novamente (resultado verdadeiro) ou não (resultado falso). A operação de incremento ou decremento da instrução enquanto...faca também deverá ser explícita no bloco de repetição, caso contrário a variável de controle se manterá com o mesmo valor que resultou em sua entrada neste bloco (teste condicional verdadeiro) para execução, ocorrendo o processamento conhecido como laço infinito Laço finito: a repetição existente no algoritmo não alterará o valor da variável de controle e manterá o bloco de repetição em constante execução, pois seu teste condicional será sempre verdadeiro e o algoritmo nunca chegará ao final de seu processamento correto. Prof. Marcelo Henrique dos Santos ALGORITMO "MÉDIA DE PESO“ var contador : inteiro peso, soma, media : real inicio contador ←1 // inicialização explícita da variável de controle soma ←0 // inicialização da variável acumuladora dos pesos enquanto (contador <= 20) faca escreva("Informe o peso do atleta", contador, ": ") leia(peso) soma ←soma + peso // acumulando os pesos informados contador ←contador + 1 // incremento explícito da repetição fim enquanto media ← soma / 20 // calcula média dos pesos acumulados escreva ("Peso médio da equipe = ", media) fimalgoritmo EXEMPLO - ENQUANTO...FACA (FLUXOGRAMA) Prof. Marcelo Henrique dos Santos É importante ressaltar que as instruções de repetição estudadas até o momento (para... faca e enquanto... faca) executam o bloco de repetição somente quando o resultado de seu teste condicional é verdadeiro, caso contrário, teste condicional falso, a repetição é encerrada e o algoritmo prossegue sua execução. Caso o teste condicional seja falso na primeira verificação, antes de executar o bloco de repetição pela primeira vez, a execução se desloca para instrução de encerramento da repetição sem executar nenhuma vez o bloco de repetição. ATIVIDADE - AULA 08 01 Escreva um algoritmo (Fluxograma e Portugol) que receba números do usuário e imprima o triplo de cada número. O algoritmo deve encerrar quando o número –999 for digitado. 02 Escreva um algoritmo (Fluxograma e Portugol) que receba números do usuário enquanto eles forem positivos e ao fim o algoritmo deve imprimir quantos números foram digitados. 03 Escreva um algoritmo (Fluxograma e Portugol) que leia vários números e informe quantos números entre 100 e 200 foram digitados. Quando o valor 0 (zero) for lido, o algoritmo deverá cessar sua execução. Prof. Marcelo Henrique dos Santos