Baixe o app para aproveitar ainda mais
Prévia do material em texto
ALGORITMO COM REPETIÇÃO CONDICIONAL 1 Repetição com Teste no Início (Enquanto..Faça) 2 ¨ Este comando de repetição permite que um determinado trecho seja executado diversas vezes, porém, sempre verificando antes de cada execução se é “permitido” repetir o mesmo trecho. ¨ O enquanto é uma estrutura de repetição cujo teste é realizado no início, e é executada enquanto uma determinada condição for verdadeira. ¨ Neste tipo de estrutura de repetição condicional não se sabe a quantidade de vezes que um determinado bloco será repetido, para tanto utiliza-se um teste lógico. Repetição com Teste no Início (Enquanto..Faça) 3 ¨ A Estrutura básica: Repetição com Teste no Início (Enquanto..Faça) 4 ¨ Onde: ¤ Condição: é uma expressão lógica que será avaliada, admitindo apenas 2 resultados: Verdadeiro ou Falso. n Para verdadeiro: o bloco de comandos será executado. n ao final do bloco, o fluxo do algoritmo retorna ao seu início e faz nova avaliação da condição, e continua executando o bloco até que a condição se torne falsa. n Quando isto ocorre o fluxo do algoritmo segue para a primeira instrução após a marca de fim de bloco (}). n Para falso: não executará nenhuma vez o bloco de comandos. Exemplo: Faça um algoritmo que leia vários valores até que seja informado um valor negativo. Mostre a soma de todos os valores lidos. 5 OBS.: Se já na primeira vez, o resultado da condição for falso, os comandos não serão executados nenhuma vez. 6 Exemplo1: ... soma:= 0 enquanto (soma > 0) { leia (valor1, valor2) soma:= valor1 + valor2 escreva (‘Soma: ’ , soma) } ..... Exemplo2: ... valor:= -4 enquanto (valor >= 0) { divisao:= valor div 2 escreva (‘Divisão: ’, divisao) } ..... Fluxograma da Estrutura de Repetição Enquanto..Faça: 7 F comando1 <condição> V comandoN comandoA Principais características desta estrutura: èA repetição é executada enquanto a condição for verdadeira. èO teste da condição é realizado no início. èPode acontecer dos comandos não serem executados nenhuma vez. Repetição com Teste no Início (Enquanto..Faça) 8 ¨ IMPORTANTE: ¤ Uma vez dentro do laço, a execução somente abandonará o mesmo quando a condição for falsa. ¤ O usuário ao utilizar este tipo de repetição (condicional) deve estar atento à necessidade de que em algum momento a condição deverá ser avaliada como falsa. ¤ Caso contrário, o programa permanecerá infinitamente no interior do laço, o que é conhecido como Laço Infinito. Algumas Regras 9 1) A condição deve ter a “chance” de sobrevivência. 2) A condição deve ter a “chance” de morte; 3) Para que o 1 ocorra a variável que compõe a condição deverá possuir um valor antes do teste condicional; 4) Para que o 2 ocorra (pra não entrar em logo infinito) a variável que compõe a condição devera ser passível de alteração em um dos comandos de laço. 1) Escreva um algoritmo que leia vários valores até que o valor zero seja fornecido. Mostre a quantidade de valores positivos e a quantidade de valores negativos. 10 Exercícios: 11 1) Faça um algoritmo que leia um número indeterminado de valores até que o valor zero seja fornecido. Calcule e escreva a soma dos números lidos que são menores que 20. 2) Faça um algoritmo que leia várias idades até que seja fornecido um valor negativo para a idade. Calcule a média de todas as idades. Repetição com Teste no Final (Faça..Enquanto) 12 ¨ A estrutura de repetição Faça..Enquanto também necessita de uma condição para ‘permitir’ que um determinado comando ou bloco de comandos seja executado. ¨ Esta estrutura possui a seguinte sintaxe: ¨ faca { ¤ <Comando1> ¤ <Comando2> ¤ ... ¤ <ComandoN> ¨ } enquanto(<Condição>) Estrutura básica (Faça..Enquanto) 13 Repetição com Teste no Final (Faça..Enquanto) 14 ¨ A estrutura de repetição utilizando o comando Faça..Enquanto permite que um bloco seja repetido até que uma determinada condição seja verdadeira. ¨ Pela sintaxe da estrutura, percebe-se que o bloco de comando (Comando1, Comando2 e ComandoN) é executado pelo menos uma vez, independente da validade da condição. ¨ Isto ocorre porque o teste da condição é feito após a execução do bloco. Exemplo: Faça um algoritmo que leia vários valores até que seja informado um valor negativo. Mostre a soma de todos os valores lidos. 15 Repetição com Teste no Final (Faca..Enquanto) 16 V comando1 <condição> F comandoN comandoA Principais características desta estrutura: è A repetição é executada enquanto a condição for verdadeira. è O teste da condição é realizado no fim. è Os comandos serão executados pelo menos uma vez. Sintetizando as diferenças entre os comandos de repetição condicional 17 ¨ Faça...Enquanto: ¤ O teste é realizado no final; ¤ Garante que as instruções internas serão executadas, sempre, ao menos uma vez. ¤ A repetição é executada enquanto a condição for verdadeira; ¨ Enquanto... Faça: ¤ É o contrário, os passos podem nunca ser executados; ¤ A repetição é executada enquanto ela for verdadeira. Exemplos de Algoritmos com a Repetição Repita..Até: 1) Escreva um algoritmo que leia vários valores até que o valor zero seja fornecido. Mostre a quantidade de valores positivos e a quantidade de valores negativos. 18 Exemplos de Algoritmos com a Repetição Repita..Até: 2) Escreva um algoritmo que leia vários valores até que um valor negativo seja fornecido. Some os valores pares. Mostre a soma calculada. 19 Exercícios2: 20 1) Faça um algoritmo que leia um número indeterminado de valores até que o valor zero seja fornecido. Calcule e escreva a soma dos números lidos que são menores que 20. 2) Faça um algoritmo que leia várias idades até que seja fornecido um valor negativo para a idade. Calcule a média de todas as idades. 21 ¨ As estruturas de Repetição Condicional (Enquanto..Faça e Faça..Enquanto) se aplicam a qualquer tipo de caso. ¨ A estrutura Para..Faça limita-se apenas a casos em que se sabe exatamente o número de repetições, o que limita a sua aplicação. ¨ Os dois exemplos a seguir são resolvidos usando as três estruturas de repetição. ¤ o primeiro, um caso com número de repetições previamente conhecido, é possível ser resolvido usando qualquer uma das estruturas. ¤ o segundo exemplo, só pode ser resolvido com as estruturas enquanto e repita, pois não se sabe previamente o número de repetições n A estrutura Para..Faça não pode ser usada, pois necessita que se informe o número exato de repetições. Comparações Entre as Estruturas de Repetições Exemplo1: Faça um algoritmo que leia 50 números inteiros e calcule a soma de todos os valores lidos. 22Enquanto... Faça Faça...Enquanto Para... Faça programa { funcao inicio() { inteiro numero, contador = 0 inteiro soma = 0 enquanto (contador < 50) { escreva (‘Digite um número: ’) leia (numero) soma = soma + numero contador:= contador + 1 } escreva (“Somatório = “, soma) } } programa { funcao inicio() { inteiro numero, contador = 0 inteiro soma = 0 faca { escreva (‘Digite um número: ’) leia (numero) soma = soma + numero contador:= contador + 1 } enquanto (contador < 50) escreva (“Somatório = “, soma) } } programa { funcao inicio() { inteiro numero, soma = 0 para(inteiro contador = 0; contador < 50; contador++ ){ escreva (‘Digite um número: ’) leia (numero) soma = soma + numero contador:= contador + 1 } escreva (“Somatório = “, soma) } } Exemplo2: Faça um algoritmo que leia diversos números e calcule o somatório destes números. Encerre quando o valor zero for digitado. 23Enquanto... Faça Faça...Enquanto Para... Faça programa { funcao inicio() { inteiro numero, soma = 0 numero = 1 enquanto (numero != 0) { escreva (‘Digite um número: ’) leia (numero) soma = soma + numero } escreva (“Somatório = “, soma) } } programa { funcao inicio() { inteiro numero, soma = 0 faca { escreva (‘Digite um número: ’) leia (numero) soma = soma + numero } enquanto (numero != 0) escreva (“Somatório = “, soma) } } programa { funcao inicio(){ inteiro numero, soma = 0 para(inteiro contador = 0; contador ???? ? IMPOSSÍVELè Número de repetições não está definido. EXERCÍCIOS ESTRUTURAS DE REPETIÇÃO 24 1) Analise os algoritmos abaixo e mostre os valores que as variáveis assumem ao longo do algoritmo. Mostre, também, o teste de mesa: 25 Algoritmo teste1 Variáveis ¤ Soma, i: inteiro Início ¤ Soma:= 0 ¤ Para i:= 1 to 5 ¤ Faça soma:= soma + i ¤ Escreva (soma) Fim b) Algorítmo teste2 26 Variáveis A, B, C, D, E: inteiro; X: real; Início A:= 5 B:= 200 C:= A * A D:= 2 se (C mod 2) = 0 então x:= B/A senão início enquanto (D <= 6) faça início E:= E + D C:= C + 1 D:= D + 1 fim fim Escreva (C); Escreva (E); Escreva (D); Escreva (X) Fim c) Algorítmo teste3 27 Variáveis A, B, C, D, i, j: inteiro Início A:= 2 Para i:= 1 até 4 Faça início A:= A * i B:= A - i fim C:= A - B D:= C div 2 Para j:= C até (C+1) Faça D:= D * C C:= C + 1 B:= D - C Escreva (A) Escreva (B) Escreva (C) Escreva (D) Fim Faça os exercícios nas duas estruturas – Enquanto..Faça e Faça..Enquanto 28 1. Escreva um algoritmo que leia 30 números e escreva a quantidade de números lidos que são maiores que 100. 2. Escreva um algoritmo que leia 10 valores e escreva os valores que são múltiplos de 3. 3. Escreva um algoritmo que leia vários números até que seja informado o valor zero para finalizar a leitura. Calcule e escreva a média de todos os valores lidos. 4. Faça um algoritmo que leia vários números inteiros. Calcule a média dos valores positivos. O final da leitura acontecerá quando for digitado um valor negativo. Mostre o resultado final. 5. Escreva um algoritmo que leia um número não determinado de valores e calcule a média aritmética dos valores lidos, a quantidade de valores positivos e a quantidade de valores negativos. Finalize a leitura com o valor igual a zero. Mostre os resultados. 29 6. Faça um algoritmo que leia vários números inteiros e calcule o somatório dos números negativos. O fim da leitura será indicado pelo número zero. Escreva o somatório. 7. Faça um algoritmo que leia o nome e o salário de vários funcionários de uma determinada empresa. Escreva o nome de todos os funcionários que possuem o salário maior ou igual a R$ 1000,00. Para encerrar a leitura, pergunte ao usuário se deseja continuar a entrada de dados. 8. Faça um algoritmo que leia duas notas de vários alunos. Calcule e escreva a média entre essas 2 notas de cada aluno e a mensagem conforme abaixo: Média Mensagem Média >= 0.0 e média < 5.0 reprovado Média >= 5.0 e média < 7.0 exame Média >= 7.0 e média <= 10.0 aprovado 9. Uma empresa deseja calcular o novo preço de venda de diversos produtos. Para isso, faça um algoritmo que leia o nome e o preço de custo de cada produto e calcule o novo preço, acrescentando 15% sobre o preço de custo. Mostre o nome e o novo preço de cada produto. Faça os exercícios nas duas estruturas – Enquanto..Faça e Faça..Enquanto
Compartilhar