Itel, 2021 Tema 5. Estrutura de Repetição Sumário ◦ Objectivo ◦ Conceito ◦ Atribuição composta ◦ Tipos de estrutura ◦ Exercícios ◦ Bibliografia Objectivo Conhecer e utilizar as estruturas de repetição. Conceito Em programação de computadores, é muito comum nos depararmos com a necessidade de repetição de processos. As estruturas de repetição são utilizadas para que uma parte do algoritmo (programa) que possa ser repetida n vezes sem a necessidade de reescrevê-lo. São também conhecidas como loop ou laços. Veremos a seguir as estruturas mais utilizadas na implementação de repetições em algoritmos e programação de computadores: 1. estrutura ENQUANTO-FAÇA 2. estrutura REPITA-ATÉ 3. estrutura PARA-ATÉ-FAÇA Atribuição composta variavel <- variavel + k, variavel <- variavel - k, variavel <- variavel * k, variavel<- variavel / k (k ≠ 0) Onde: k é um valor ou uma variável com um valor. variavel: é a variável controladora do ciclo ou variável principal. Incremento: toda expressão do tipo variavel <- variavel operador k em que a variável controladora cresce sempre. Decremento: toda expressão do tipo variavel <- variavel operador k em que a variável controladora decresce sempre. Onde: operador: + (adição), - (subtração), *(multiplicação), / (divisão) Atribuição composta Inicialização da variável principal As variáveis das expressões compostas devem ser inicializadas com um valor, este valor depende do problema ou exercício mas em caso de falta de informação adopta-se em relação aos operadores: •Operador de + (adição) ou – (subtração): as suas variáveis principais devem ser inicializada por padrão com o valor 0 (zero). Ex: variavel <- 0 •Operador de * (multiplicação) ou / (divisão): as suas variáveis principais devem ser inicializada por padrão com o valor 1 (um). Ex: variavel <- 1 Enquanto-faça enquanto (condição) faça comando(s) fimenquanto Enquanto - faça Teste: feito no início Repete um ciclo: quando a condição for verdadeira Ciclos ou sequências: crescente e decrescente CRESCENTE[ a variável controladora cresce] variavel <- variavel + 1 Sinais: < menor [intervalo aberto: excluí o extremo e incluí o(s) antecessor(es) do extremo] <= menor ou igual[intervalo fechado: incluí o extremos e o(s) antecessor(es) do extremo]. Enquanto - faça Condição: variavel < extremo : são válidos todos os valores menores do que o extremo e inválidos todos os valores maiores ou iguais ao extremo. variavel <= extremo : são válidos todos os valores menores ou iguais ao extremo e inválidos todos os valores maiores do que o extremo. Onde: variavel: é a variavél controladora do ciclo. extremo: pode ser um valor, variável ou ainda expressão. Valores válidos: são valores que tornam uma condição verdadeira. Valores inválidos: são valores que tornam uma condição falsa. Enquanto - faça DECRESCENTE[ a variável controladora decresce] variavel <- variavel - 1 Sinais: > maior [intervalo aberto: excluí o extremo e incluí o(s) sucessor(es) do extremo] >= maior ou igual[intervalo fechado: incluí o extremos e o(s) sucessor(es) do extremo]. Condição: variavel > extremo : são válidos todos os valores maiores do que o extremo e inválidos todos os valores menores ou iguais ao extremo. Enquanto - faça variavel >= extremo : são válidos todos os valores maiores ou iguais ao extremo e inválidos todos os valores menores do que o extremo. Onde: variavel: é a variavél controladora do ciclo. extremo: pode ser um valor, variável ou ainda expressão. Valores válidos: são valores que tornam uma condição verdadeira. Valores inválidos: são valores que tornam uma condição falsa. Exercícios – Enquanto-faça 1. Cria um programa para apresentar números inteiros de 1 até 20. 2. Cria um programa que leia 20 valores reais e calcule seu somatório utilizando. 3. Faça um algoritmo que apresente o quadrado de cada um dos números pares entre 1 a 100. 4. Crie um programa que o utilizador entre com 7 números inteiros e positivos e imprima o produto dos números ímpares e a soma dos números pares. 5. Cria um programa que leia 20 valores inteiros e ao final exiba: a) soma dos números positivos b) a quantidade de valores negativos. Repita - até repita comando(s) Até (condição) Repita - até Teste: feito no fim Repete um ciclo: quando a condição for falsa Ciclos ou sequências: crescente e decrescente CRESCENTE[ a variável controladora cresce] variavel <- variavel + 1 Sinais: < menor [intervalo aberto: incluí o extremos e o(s) antecessor(es) do extremo] <= menor ou igual[intervalo fechado: excluí o extremo e incluí o(s) antecessor(es) do extremo]. Repita - até Condição: variavel < extremo : são válidos todos os valores maiores ou iguais do que o extremo e inválidos todos os valores menores do que extremo. variavel <= extremo : são válidos todos os valores maiores do que o extremo e inválidos todos os valores menores ou iguais do que extremo. Onde: variavel: é a variavél controladora do ciclo. extremo: pode ser um valor, variável ou ainda expressão. Valores válidos: são valores que tornam uma condição falsa. Valores inválidos: são valores que tornam uma condição verdadeira. Repita - até DECRESCENTE[ a variável controladora decresce] variavel <- variavel - 1 Sinais: > maior [intervalo aberto: incluí o extremo e o(s) sucessor(es) do extremo] >= maior ou igual[intervalo fechado: excluí o extremo e incluí o(s) sucessor(es) do extremo]. Condição: variavel > extremo : são válidos todos os valores menores ou iguais do que o extremo e inválidos todos os valores maiores do que extremo. Enquanto - faça variavel >= extremo : são válidos todos os valores menores do que o extremo e inválidos todos os valores maiores ou iguais do que extremo. Onde: variavel: é a variavél controladora do ciclo. extremo: pode ser um valor, variável ou ainda expressão. Valores válidos: são valores que tornam uma condição falsa. Valores inválidos: são valores que tornam uma condição verdadeira. Exercícios – Repita-Até 1. Cria um programa para apresentar números de 1 até 20. 2. Cria um programa que leia 20 valores reais e calcule seu somatório utilizando. 3. Faça um algoritmo que apresente o quadrado de cada um dos números pares entre 1 a 100. 4. Faça um programa que apresenta na tela os números de um número inicial a um número final. Os números inicial e final devem ser informados pelo utilizador. 5. Cria um programa que imprima a tabuada de um número informado pelo utilizador. Bibliografia ◦ Algoritmo e programação. Santos, Jorge. Porto Editora. ◦ Técnicas de Linguagem de Programação 10. REDITEP. ◦ Introdução à programação. Anita Lopes & Guto Garcia, 2002 ◦ Algoritmo e Lógica de Programação. Universidade Federal do Rio Grande do Norte, 2004 ◦ Apostila de Lógica de Programação –Algoritmos-. Flávia Pereira de Carvalho, 2007. Fim