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

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

Algoritmos e Programação I

Apresentações semelhantes


Apresentação em tema: "Algoritmos e Programação I"— Transcrição da apresentação:

1 Algoritmos e Programação I
Estruturas de Repetição

2 Estruturas de Repetição
Objetivo: repetir um conjunto de procedimentos até que determinado objetivo seja atingido, que é quando a repetição se encerra. Todas as estruturas de repetição tem em comum o fato de haver uma condição de controle (expressão lógica) que é testada em cada ciclo para determinar se a repetição prossegue ou não.

3 Ex: calcule a média aritmética das notas de 30 alunos; calcule a média aritmética de vários valores digitados até que o número 0 seja digitado; calcular a expressão Sn = nn. # repetições Atendido? Instruções a serem repetidas sim não

4 Estruturas de Repetição
Existem 3 estruturas de repetição e a diferença básica entre elas é o momento no qual a condição de controle será executada: para-faça tem embutida um mecanismo de controle para determinar quando a repetição deverá ser terminada; enquanto-faça primeiro testa a condição para depois realizar o bloco de comando; repita-até primeiro executa o bloco para depois realizar o teste.

5 Estruturas de Repetição
Para casos onde se deseja executar os comandos um número fixo de vezes, onde este número já é conhecido, existe a estrutura para-faça: para <variável> de <valor-inicial> ate <valor-limite> faca    <seqüência-de-comandos> fimpara A <seqüência-de-comandos> será executada cada vez que a variável receber um valor, começando com o <valor-inicial> e indo até o <valor-limite>, sendo incrementada de um em um.

6 Estruturas de Condição
Ex: criar um algoritmo que escreva os números de 1 a 10 em ordem crescente. algoritmo "exemplo1" var i: inteiro inicio para i de 1 ate 10 faca    escreva (i) fimpara fimalgoritmo

7 Estruturas de Condição
Exercício: criar um algoritmo que leia 5 nomes e escreva-os na ordem em que foram lidos. Número Nome Impressão 1 José 1 - José 2 Antônio 2 - Antônio 3 João 3 - João 4 Maria 4 - Maria 5 Júlia 5 - Júlia

8 Estruturas de Condição
Solução: algoritmo "exemplo2" var nome : literal i : inteiro inicio para i de 1 ate 5 faca escreva (“Entre com o nome: “,nome) leia(nome) escreval (i,” - “,nome) fimpara fimalgoritmo

9 Exercício: Faça um algoritmo que imprima os 4 primeiros números inteiros pares positivos

10 Solução 1: Algoritmo <pares> inteiro: i Inicio Para i de 1 até 4 repita escreva (2*i) Fim Para Fim

11 Solução 2: Algoritmo <pares> inteiro: i,n Inicio n ←0 Para i de 1 até 4 repita n ←n+2 escreva (n) Fim Para Fim

12 Solução 3: Algoritmo <pares> inteiro: i Inicio Para i de 2 até 8 passo 2 repita escreva (i) Fim Para Fim

13 Estruturas de Repetição
Para casos onde se deseja que o incremento seja feito de valores diferentes de 1 deve-se utilizar a opção passo no comando: para <variável> de <valor-inicial> ate <valor-limite> passo <incremento> faca    <seqüência-de-comandos> fimpara O incremento é o valor será acrescentado à variável contadora em cada repetição. Pode-se definir um valor negativo também.

14 Estruturas de Condição
Ex: criar um algoritmo que escreva os números de 1 a 10 em ordem decrescente. algoritmo "exemplo3" var j: inteiro inicio para j de 10 ate 1 passo -1 faca    escreva (j) fimpara fimalgoritmo

15 Exercicio: criar um algoritmo que escreva a quantidade de copas do mundo já realizadas desde 1970.

16 Estruturas de Repetição
Quando não se sabe de antemão quantas repetições serão realizadas pode-se utilizar outra estrutura de repetição: enquanto <condição-controle> faca     <seqüência-de-comandos> fimenquanto Antes de entrar na repetição, a <condição-controle> é avaliada, caso seja verdadeira, a <sequencia-de-comandos> será executada. Ao final avalia-se a <condição-controle> novamente. Caso seja falso, o algoritmo sai da estrutura de repetição.

17 Estruturas de Condição
Ex: criar um algoritmo que escreva os números de 1 a 10 em ordem crescente. algoritmo "exemplo4" var j: inteiro inicio j < enquanto j <= 10 faca    escreva (j) j <- j fimenquanto fimalgoritmo

18 Estruturas de Condição
Como essa estrutura testa sua condição de parada antes de executar sua seqüência de comandos, esta seqüência poderá ser executada zero ou mais vezes. Ex: criar um algoritmo que multiplique todos os valores lidos até que o número 0 (zero) seja digitado.

19 Estruturas de Condição
algoritmo “exemplo5” var MULT, NUM: real inicio MULT <- 1 escreva (“Entre com um número (0 - sai): “,NUM) leia (NUM) enquanto NUM != 0 faça MULT <- MULT*NUM fim-enquanto escreva (“O produto dos valores lidos é: “, MULT) fimalgoritmo

20 Algoritmo <quadrados> inteiro: numero Inicio escreva (num)
Exercício: Faça um algoritmo que determine os quadrados de um conjunto de números inteiros positivos. Condição de parada: usuário digitar valor 0. Algoritmo <quadrados> inteiro: numero Inicio escreva (num) leia (numero) enquanto (numero>0) faça escreva (numero*numero) fim enquanto Fim

21 Estruturas de Repetição
Existe outra forma de realizar repetições sem saber de antemão quantas serão realizadas: repita     <seqüência-de-comandos> ate <condição-controle> Como essa estrutura testa sua condição de parada depois de executar sua seqüência de comandos, esta seqüência poderá ser executada uma ou mais vezes.

22 Estruturas de Condição
Ex: criar um algoritmo que escreva os números de 1 a 10 em ordem crescente. algoritmo "exemplo6" var j: inteiro inicio j < repita    escreva (j) j <- j ate j > 10 fimalgoritmo

23 Estruturas de Condição
Ex: criar um algoritmo que multiplique todos os valores lidos até que o número 0 (zero) seja digitado. algoritmo “exemplo7” var MULT, NUM: real inicio MULT <- 1 repita escreva (“Entre com um número (0 - sai): “,NUM) leia (NUM) se NUM != 0 entao MULT <- MULT*NUM fimse ate NUM != 0 escreva (“O produto dos valores lidos é: “, MULT) fimalgoritmo

24 Ex: Suponha que no ano N a população americana seja maior que a brasileira. Sabendo-se que os Estados Unidos possuem um crescimento anual de 2% na sua população e que o Brasil tem crescimento anual de 4%, determinar o ano em que as duas populações serão iguais (em quantidade). São dados os números de habitantes dos Estados Unidos e do Brasil no ano N

25 Algoritmo <populacao>
inteiro: ano,br,am Inicio leia (ano,br,am) repita br ←br*1.04 am ←am*1.02 ano ←ano+1 até que (br>=am) escreva (ano) Fim Algoritmo <populacao> inteiro: ano,br,am Inicio leia (ano,br,am) enquanto (am>br) faça am ←am*1.02 br ←br*1.04 ano ←ano+1 fim enquanto escreva (ano) Fim

26 Vamos praticar....


Carregar ppt "Algoritmos e Programação I"

Apresentações semelhantes


Anúncios Google