Baixe o app para aproveitar ainda mais
Prévia do material em texto
Universidade CEUMA Algoritmos ALG07 - LINGUAGEM ALGORÍTMICA - Estrutura de Repetição Enquanto-faca ESTRUTURAS DE REPETIÇÃO Objetivo: permitir que um bloco de comandos seja executado repetidamente, sendo esta repetição de comandos subordinada ao teste de satisfação da condição. Formas funcionamento da repetição: quando ou quantas vezes os comandos serão repetidos dependerá da estrutura de repetição utilizada, pois elas tem características de funcionamento diferentes. Características: É necessário implementar um critério de parada (condição) para que o laço não entre em loop infinito. Há 3 estruturas de repetição usuais nas LPs: os laços condicionados enquanto...faca e repita...ate; o laço contado para...ate...faca. 1 Objetivo: repetir uma sequência de comandos enquanto uma determinada condição (uma expressão lógica) for satisfeita. Características: A condição é avaliada antes de cada repetição do laço (teste a priori); O bloco de comandos pode ser repetido 0 ou mais vezes devido ao teste ser a priori. Quando usar: Quando necessita-se realizar repetições de tarefas para que um dado processamento gere um resultado; Quando sabe-se previamente a quantidade de repetições ou não. Estrutura de Repetição: enquanto...faca 2 Funcionamento: 1) A condição do laço é inicialmente testada, caso seja satisfeita (verdadeira) o bloco de comandos entre os tokens enquanto e fimenquanto são executados; 2) Quando o fluxo de execução atinge o final do laço, volta-se ao início do laço (token enquanto) e avalia-se novamente a condição; 3) Quando a condição do laço não for satisfeita (falsa), o fluxo de execução passa para a próxima linha de comando após o fimenquanto. Estrutura de Repetição: enquanto...faca 3 Atenção! O token fimenquanto é utilizado para indicar o fim da subordinação de um bloco de comandos à condição da repetição. Sintaxe: enquanto <condição> faca comando-A1 comando-A2 fimenquanto Exemplo: leia (senha) enquanto senha <> “asper” faca escreval (“Senha inválida”) escreval (“Digite a senha novamente”) leia (senha) fimenquanto Estrutura de Repetição: enquanto...faca 4 Atenção! Pode-se aninhar várias estruturas de repetição enquanto...faca e também outras estruturas de decisão. Fluxograma: Objetivo: Realizar a contagem de uma ação ou ocorrência de algo. Características: É uma variável incrementada, ou seja, que sofre uma auto substituição; é uma variável acumuladora, ou seja, a variável acumula o seu próprio valor anterior somado a outro valor ou outra variável; Deve ser declarada como sendo do tipo inteiro; Deve ser inicializada antes da auto substituição, geralmente após sua declaração; O valor de inicialização dependerá da lógica necessária em cada situação. Variáveis contadoras 5 Estrutura de Repetição: enquanto...faca 6 Funcionamento: Quando utilizada em uma estrutura de repetição, o incremento dependerá da condição da repetição. O mais comum é que uma variável contadora seja adicionada de 1 unidade, mas isto dependerá da lógica requerida. É comum ser utilizada em uma estrutura de repetição. Quando utilizar: Para contar a ocorrência de uma dada situação; Como critério de parada em uma condição de uma estrutura de repetição. 1) Faça um algoritmo que mostre os 50 primeiros números inteiros positivos. algoritmo "mostra50numeros" // Função : mostra cinquenta números utilizando a estrutura enquanto var contint: inteiro inicio contint <- 0 //esta inicialização é necessária enquanto contint < 50 faca escreval (contInt) contInt <- contInt + 1 fimenquanto fimalgoritmo Exemplos 7 2) Faça um algoritmo que leia um número N, some todos os números inteiros de 1 a N e mostre o resultado obtido. Exemplos 8 Exemplos 3) Fornecidos uma série de 20 valores reais pelo usuário, faça um algoritmo que calcule e escreva a média aritmética destes valores. Se a média obtida for maior que 8 deverá ser atribuída 10 para a média. Atenção! A inicialização da variável pode causar um erro. Neste caso, o laço é repetido 21 vezes e não 20. 9 10 Exemplos 4. Escreva um algoritmo que calcule a média aritmética entre duas notas para os 50 alunos de uma sala. 5. Escreva um algoritmo que solicite ao usuário digitar um número e forneça o quadrado deste número digitado, enquanto esse número for positivo. No momento em que o usuário digitar um valor negativo deve aparecer a mensagem de que o número digitado é negativo. Exemplos 11 Atenção! Não se pode prever em que momento o usuário irá digitar um número negativo. Logo, não há como saber previamente a quantidade de repetições. Objetivo: Interromper o fluxo de execução de uma estrutura de repetição independentemente do atingimento do critério de parada.; causar uma saída imediata do laço (saída forçada; abortar a repetição). Características: As três estruturas de repetição permitem o uso do comando interrompa; É uma técnica que de certa forma está em desacordo com os princípios da programação estruturada, é utilizada em várias linguagens de programação estruturada. Comando Interrompa 12 Atenção! O uso do comando interrompa deve ser evitado sempre que possível. Exemplo: Interrompa 13 1. Escreva um algoritmo que receba uma quantidade indeterminada de números positivos e diga quantos deles estão no intervalo de 0 a 25, quantos estão no intervalo de 26 a 50 e quantos são maiores que 50. O algoritmo deve parar quando o usuário digitar um número negativo. 2. Escreva um algoritmo que receba um número diversas vezes e mostre o seu inverso (1/n). O algoritmo encerra quando o valor digitado é zero, exibindo uma mensagem de erro que diz que não se pode dividir por zero. 3. Escreva um algoritmo que receba o preço e a quantidade de 20 diferentes produtos e mostre o valor total da compra. 4. Escreva um algoritmo que solicite ao usuário digitar um número inteiro positivo e depois calcule o somatórios de todos os números pares no intervalo de 0 até o número digitado. EXERCÍCIOS 14 5. Escreva um algoritmo que solicite ao usuário digitar um número inteiro positivo e imprima na tela todos os números ímpares deste intervalo (de 0 até o número digitado). 6. Escreva um algoritmo que determine o ano em que a população brasileira supera ou iguala a população americana. O usuário deverá informar as populações e o ano referente a estas informações. Além disso, o cálculo do reajuste da população brasileira deve ser de 4% ao ano e a americana de 2% ao ano. EXERCÍCIOS 15
Compartilhar