AULA 07 OBJETIVO: Estruturas de repetição: visão geral HABILIDADES TRABALHADAS: Desenvolver algoritmos utilizando laços a partir da leitura de fluxogramas ou algoritmos em portugol. ESTRUTURA DE REPETIÇÃO • Estrutura de Repetição para...faca • Estrutura de Repetição enquanto...faca • Estrutura de Repetição repita...ate REPETIÇÃO Conjunto de instruções, ou uma única instrução, que será executada repetidamente, de acordo com o resultado de um teste condicional que compõem a instrução de repetição e permite o laço para nova execução destas instruções que compõem o bloco de repetição. REPETIÇÃO- FORMA GERAL DE SINTAXE As estruturas de repetição possibilitam que o processamento de algumas instruções do algoritmo sejam executadas repetidas vezes, conforme a necessidade da lógica envolvida para solução do problema computacional que se deseje resolver. Prof. Marcelo Henrique dos Santos Apesar das mesmas instruções serem repetidas em sua execução, geralmente, elas envolvem dados diferentes, o que ocasionará resultados distintos durante sua execução. EXEMPLO - TABUADA Um exemplo simples e didático ao início desta aprendizagem em Programação (instruções de repetição) é o cálculo da tabuada de um número. Esta realização consiste na mesma operação aritmética (multiplicação) sobre valores numéricos inteiros diferentes e sequências, que geralmente variam entre um (1) e dez (10) sobre um outro valor inteiro desejado. EXEMPLO – TABUADA EM PORTUGOL algoritmo "tabuada" // Síntese // Objetivo: calcular a tabuada de um número inteiro positivo // Entrada: número inteiro positivo // Saída: tabuada de 1 até 10 do número inteiro positivo informado // Declarações var numero : inteiro inicio escreva ("Informe um número inteiro positivo para tabuada: ") leia (numero) escreva (numero, " x 1 = ", (numero * 1) ) escreva (numero, " x 2 = ", (numero * 2) ) escreva (numero, " x 3 = ", (numero * 3) ) escreva (numero, " x 4 = ", (numero * 4) ) escreva (numero, " x 5 = ", (numero * 5) ) escreva (numero, " x 6 = ", (numero * 6) ) escreva (numero, " x 7 = ", (numero * 7) ) escreva (numero, " x 8 = ", (numero * 8) ) escreva (numero, " x 9 = ", (numero * 9) ) escreva (numero, " x 10 = ", (numero * 10) ) fimalgoritmo As estruturas de repetição são formadas por um bloco de instrução e um teste condicional, responsável pela verificação de que este bloco, denominado bloco de repetição, será executado ou não repetidas vezes. Estas estruturas também denominam o teste condicional como expressão de controle, pois sendo seu resultado lógico (verdadeiro ou falsa) resultará na repetição ou não da execução do bloco de repetição. Prof. Marcelo Henrique dos Santos As estruturas de repetição atendem a características lógicas diferentes que possam ser encontradas no processamento de dados. São 3 tipos de instruções de repetição, também chamados de instruções de laço ou looping: – para... faca – enquanto... faca – repita... ate ESTRUTURA DE REPETIÇÃO PARA...FACA A instrução de repetição para...faca repete a execução de seu bloco de repetição um número de vezes fixado em sua definição, sendo possível conhecer previamente a quantidade de vezes que isso ocorrerá durante a execução do algoritmo. Esta instrução é definida em uma única linha de comando no português estruturado, porém torna implícita três instruções fundamentais a sua execução correta: – atribuição inicial a sua variável de controle; – teste condicional responsável pela repetição ou não de seu bloco; – definição do passo da repetição sobre a variável de controle. para <variável_controle> de <inicial> ate <final> passo <rep> faca bloco de repetição fimpara • para, de, ate, passo, faca e fimpara - são palavras reservadas. <variável_controle> - variável inteira responsável pelo controle da repetição; <inicial> - valor inteiro inicial que será atribuído a variável de controle no momento em que esta instrução for executada a primeira vez. <final> - valor inteiro final que permitirá a execução do bloco de repetição pela última vez. <rep> - valor inteiro que define o incremento ou decremento na variável de controle que será realizada a cada nova execução do bloco de repetição, antes da realização do teste condicional que definirá a execução ou não do bloco de repetição. Prof. Marcelo Henrique dos Santos SOLUÇÃO DO PROBLEMA DA TABUADA algoritmo "tabuada" // Síntese // Objetivo: calcular a tabuada de um número inteiro positivo // Entrada: número inteiro positivo // Saída: tabuada de 1 até 10 do número inteiro positivo informado // Declarações var numero, controle : inteiro inicio escreva ("Informe um número inteiro positivo para tabuada: ") leia (numero) para controle de 1 ate 10 passo 1 faca escreva (numero, " x ",controle," = ", (numero * controle) ) fimpara fimalgoritmo SOLUÇÃO DO PROBLEMA DA TABUADA – FLUXOGRAMA Prof. Marcelo Henrique dos Santos ATIVIDADE - AULA 07 1) Faça o fluxograma e o Portugol de um programa que conte de 1 a 100 e a cada múltiplo de 10 emita uma mensagem: “Múltiplo de 10”. 2) Faça o fluxograma e o Portugol de um programa para calcular a soma dos pesos das pessoas com mais de trinta anos. O usuário deverá informar a quantidade de pessoas e a idade e o peso de cada pessoa. 3) Escreva o fluxograma e o Portugol de um programa que imprima todos os números inteiros de 100 à 200. 4) Escreva o fluxograma e o Portugol de um programa que receba dez números do usuário e imprima a metade de cada número. Prof. Marcelo Henrique dos Santos