A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Estruturas de Repetição

Apresentações semelhantes


Apresentação em tema: "Estruturas de Repetição"— Transcrição da apresentação:

1 Estruturas de Repetição
Prof. Esp. Douglas Mariano dos Santos

2 Estruturas de Repetição
São muito comuns as situações em que se deseja repetir um determinado trecho de um programa um certo número de vezes. As estruturas de repetição são muitas vezes chamadas de Laços ou também de Loops. Classificação: Laços Contados Conhecimento previo de quantas vezes o comando no interior da construção será executado; Laços Condicionais Não se conhece de antemão o número de vezes que o conjunto de comandos no interior do laço será repetido. Amarrado a uma condição sujeita à modificação pelas instruções do interior do laço.

3 Laços condicionais O conjunto de comandos em seu interior é executado até que uma determinada condição seja satisfeita. Laços condicionais mais comuns nas linguagens de programação modernas: Enquanto - laço condicional com teste no início Repita - laço condicional com teste no final A variável que é testada dever sempre estar associada a um comando que a atualize no interior do laço. Caso isso não ocorra, o programa ficará repetindo indefinidamente este laço, gerando um “laço infinito”.

4 Laços Condicionais com Teste no Início (enquanto ... faca)
Caracteriza-se por uma estrutura que efetua um teste lógico no início de um laço, verificando se é permitido ou não executar o conjunto de comandos no interior do laço. enquanto <condição> faca <comando_composto> fimenquanto

5 Fluxograma

6 Laços condicionais (enquanto ... faca)
algoritmo "numeros" var num_inicial, num_final, i : inteiro inicio escreva("Digite o número inicial: ") leia(num_inicial) escreva("Digite o número final: ") leia(num_final) i <- num_inicial enquanto (i <= num_final) faca escreval(i) i <- i + 1 fimenquanto escreva("fim") fimalgoritmo

7 Exemplo algoritmo "exemplo_enquanto" var soma, num : inteiro inicio num <- 1 soma <- num enquanto soma < 1000 faca escreval(num, " - ", soma) num <- num + 1 soma <- soma + num fimenquanto fimalgoritmo

8 Exemplo

9 Laços Condicionais com Teste no Final ( repita ... ate )
Efetua um teste lógico no final de um laço, verificando se é permitido ou não executar novamente o conjunto de comandos no interior do mesmo. Na construção Repita o comando é executado uma ou mais vezes (pelo menos uma vez). Além disso, a variável pode ser inicializada ou lida dentro do laço. Na construção Enquanto o comando é executado zero ou mais vezes. repita <comando_composto> ate <condição>

10 Laços condicionais (repita ... ate)
algoritmo "numeros" var num_inicial, num_final, i : inteiro inicio escreva("Digite o número inicial: ") leia(num_inicial) escreva("Digite o número final: ") leia(num_final) i <- num_inicial repita escreval(i) i <- i + 1 ate (i > num_final) escreva("fim") fimalgoritmo

11 Fluxograma

12 Exemplo algoritmo "exemplo_repita" var num : inteiro inicio repita leia(num) escreval(num, " - ", num * 2) num <- num * 2 ate num % 2 = 0 fimalgoritmo

13 Fluxograma

14 Laços contados São úteis quando se conhece previamente o número exato de vezes que se deseja executar um determinado conjunto de comandos. Estrutura dotada de mecanismos para contar o número de vezes que o corpo do laço é executado. para <variável> de <início> ate <final> faca <comando_composto> fimpara

15 Laços contados (para ... de ... ate ... faca)
algoritmo "numeros" var num_inicial, num_final, i : inteiro inicio escreva("Digite o número inicial: ") leia(num_inicial) escreva("Digite o número final: ") leia(num_final) para i de num_inicial ate num_final faca escreval(i) fimpara escreva("fim") fimalgoritmo

16 Laços contados Existe uma condição especial em que a contagem pode ser de forma decrescente, onde o valor da variável é decrementado. para <variável> de <início> ate <final> passo –1 faca <comando_composto> fimpara

17 Fluxograma

18 Exemplo algoritmo "tabuada" var i, tab, num : inteiro inicio escreva("Tabuada: ") leia(tab) escreva("Até que número: ") leia(num) para i de 1 ate num faca escreva(i, " x ", tab, " = ", i * tab) fimpara fimalgoritmo

19 Fluxograma

20 Estruturas de Controle Encadeadas ou aninhadas
Um aninhamento ou encadeamento é o fato de se ter qualquer um dos tipos de construção apresentados anteriormente dentro do conjunto de comandos (comando composto) de uma outra construção. Em qualquer tipo de aninhamento é necessário que a construção interna esteja completamente embutida na construção externa. Aninhamento inválido Aninhamento válido

21 Exercícios – (enquanto - faca)
Faça um algoritmo que escreva 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 usuário. Escrever um algoritmo que imprima a tabuada de um número informado pelo usuário; Escrever um algoritmo que gera e escreve os números ímpares entre 100 e 200; Em uma turma há 10 alunos. Cada aluno tem 2 notas. Um professor precisa calcular a média das duas notas de cada aluno. Crie um programa que resolva este problema.

22 Exercícios – (repita – ate)
Escreva um algoritmo que calcule a média dos números digitados pelo usuário, se eles forem pares. Termine a leitura se o usuário digitar zero (0); Escreva um algoritmo que leia valores inteiros e encontre o maior e o menor deles. Termine a leitura se o usuário digitar zero (0); Escreva uma programa que lê o sexo de uma pessoa. O sexo deverá ser com o tipo de dado caractere o programa deverá aceitar apenas os valores “M” ou “F”. Escreva um programa que leia dois valores reais. Ambos valores deverão ser lidos até que o usuário digite um número no intervalo de 1 a 100. Apresentar a soma dos dois valores lidos.

23 Exercícios ( para – faca)
Escreva um programa que, solicite ao usuário um número e calcule seu fatorial. Escreva um programa que leia o número de jogadores de um time, em seguida leia a altura de cada um dos jogadores e, ao final, informe a altura média do time. Escreva um programa que simule a tabuada, porém, executando a soma dos algarismos ao invés de multiplica-los.

24 Exercícios ( mistos ) Criar um algoritmo capaz de verificar se um número lido é primo ou não Criar um algoritmo que gere um laço de 1 a 100, inclusive, e que mostre todos os números múltiplos de 6. Criar um algoritmo para mostrar 20 números da sequência de Fibonacci (0, 1, 1, 2, 3, 5, 8, 13,...).

25 Exercícios ( mistos ) Construir um algoritmo que calcule a média aritmética de vários valores inteiros positivos, lidos externamente. O final da leitura acontecerá quando for lido um valor negativo. (Use a estrutura enquanto-faça) Escreva um algoritmo que leia 10 valores inteiros e positivos e (Use a estrutura enquanto-faça): a) encontre o maior valor; b) encontre o menor valor; c) calcule a média dos números lidos. Uma loja tem 3 clientes cadastrados e deseja mandar uma correspondência a cada um deles anunciando um bônus especial. Escreva um algoritmo que leia o nome do cliente e o valor das suas compras no ano passado e calcule um bônus de 10% se o valor das compras for menor que e de 15% bonus, caso contrário 10% bonus. (Use a estrutura repita ate).


Carregar ppt "Estruturas de Repetição"

Apresentações semelhantes


Anúncios Google