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

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

1 Introdução a Programação Estruturas de repetição Prof. Luis Otavio Alvares Parte deste material é adaptado de lâminas das Profas. Patrícia Jaques, Mônica.

Apresentações semelhantes


Apresentação em tema: "1 Introdução a Programação Estruturas de repetição Prof. Luis Otavio Alvares Parte deste material é adaptado de lâminas das Profas. Patrícia Jaques, Mônica."— Transcrição da apresentação:

1 1 Introdução a Programação Estruturas de repetição Prof. Luis Otavio Alvares Parte deste material é adaptado de lâminas das Profas. Patrícia Jaques, Mônica Py e Deise Saccol

2 2 ESTRUTURAS DE REPETIÇÃO –Se uma ação se repete em um algoritmo, em vez de escrevê-la várias vezes, em certos casos podemos resumir anotando uma vez só e solicitando que ela se repita, usando uma das estruturas de repetição. –Podemos executar uma ação (ou um conjunto de ações) um número definido ou indefinido de vezes, ou enquanto um estado permanecer ou até que um estado seja atingido. –As principais estruturas de repetição são: PARA...ATÉ...REPETIR ENQUANTO...REPETIR REPETIR...ENQUANTO Lógica de programação

3 3 Fluxograma de uma estrutura de repetição: Lógica de programação INÍCIO FIM CONT <= 10? Não Sim CONT = 1 CONT = CONT + 1 Neste ponto do algoritmo podemos incluir qualquer conjunto de instruções que quisermos repetir 10 vezes.

4 4 Enquanto...Repetir Enquanto (condição) repetir Repetir...Enquanto Repetir enquanto (condição) Para...até...repetir Para = até repetir Lógica de programação Estruturas de repetição condição instrução V F condição instrução V F

5 5 –Até agora para vários valores informados pelo usuário líamos cada valor de forma separada –Por exemplo, no algoritmo para o cálculo da média de quatro números, líamos 4 valores em 4 variáveis diferentes. Mas também poderíamos: ler um valor para 1 variável e repetir isso 4 vezes, adicionando cada valor lido ao total em uma outra variável, a cada repetição. Após as 4 repetições, a soma dos 4 números estaria acumulada na outra variável, bastando uma instrução para dividi-la por 4 e assim obter a média. Lógica de programação

6 6 Exemplo Para Ler 50 números fornecidos pelo usuário e calcular e exibir a média. Pseudocódigo: 1. Início 2. Soma = 0 <<< o acumulador precisa ter um valor inicial 3. Para cont =1 até 50 repetir 3.1 ler num 3.2 soma = soma + num 4. Media = soma / cont 5. Mostrar media 6. Fim

7 7 PARA...ATÉ...REPETIR –Formato: Para = até repetir Significado: A é inicializada com. Após cada execução das, é somado 1 à e repete- se as, continuando assim até que a atinja o. Esta estrutura de repetição cria um contador automático, que nós não precisamos mandar incrementar. Ao usar esta estrutura já está subentendido que a inicia com e é incrementada a cada ciclo (podendo-se inclusive aproveitar seu valor dentro do ciclo), e que as serão repetidas até que a tenha o. Lógica de programação

8 8 Exemplo da estrutura PARA...ATÉ...REPETIR: Mostrar os quadrados dos inteiros de 3 a 11. –Pseudocódigo: Para CONT = 3 até 11 repetir Mostrar (CONT *CONT) –Usamos esta estrutura quando sabemos quantas vezes temos de repetir certas ações, mesmo que o número de vezes só seja conhecido durante a execução. Por exemplo: Perguntar ao usuário de quantos valores ele quer calcular a média. Ler os números e calcular a média. Lógica de programação Isto será repetido 9 vezes.

9 9 Lógica de programação E se eu quisesse calcular a média de N números? –Para esse problema construímos um algoritmo que será genérico, ou seja, que poderá ser usado para calcular a média de quantos números se quiser! –Pseudocódigo: 1- Início 2- Mostrar De quantos valores você quer calcular a média? 3- Ler QUANT (aqui se descobre quantas repetições) 4- SOMA = 0 5- Para CONT = 1 até QUANT repetir 5.1- Ler N (aqui é lido cada número, um em cada ciclo) 5.2- SOMA = SOMA + N (aqui os valores lidos são acumulados) 6- MEDIA = SOMA / QUANT (isto está fora do loop) 7- Mostrar MEDIA 8- Fim

10 Exercício Faça um algoritmo para calcular e escrever o valor de S: 10

11 Exemplo de solução Início 2. S=0 3. Para I=1 ate 50 repetir 3.1 S=S+(I*2-1)/I 4. Mostrar S 5. Fim

12 Exercício 12 Faça um algoritmo para calcular os 20 primeiros termos da série de Fibonacci: 0, 1, 1, 2, 3, 5, 8, 13, …. com F 0 =0 e F 1 =1

13 Exemplo de solução 1. Início 2. Mostrar 0 3. Mostrar 1 4. n_2=0 5. n_1=1 6. Para I=3 até 20 repetir 6.1 n=n_1 + n_2 6.2 mostrar n 6.3 n_2=n_1 6.4 n_1=n 7. Fim 13

14 Exercício Faça um algoritmo para calcular a soma dos números primos menores que 100 Faça um teste de mesa para testar a sua solução 14

15 Exemplo de solução 1.Início 2. Para I=1 até 99 repetir 2.1 eprimo=1 2.2 para J=2 até I-1 repetir se I%j=0 então eprimo=0 2.3 se eprimo=1 então mostrar I 3. Fim 15

16 Estruturas de repetição em C 16

17 17 Estrutura de repetição: comando for Comando for for (var=valor inicial; condição; incremento/decremento) comando; for (var=valor inicial; condição; incremento/decremento) { comando1; comando2; comando3; } Exemplo: for (cont=3; cont<=11; cont++) printf (%d,cont);

18 Comando for for (var=valor inicial; condição; inc/dec) comando1; 18 Não esquecer dos parênteses O comando1 será executado enquanto a condição for verdadeira O incremento ou decremento é executado automaticamente após a execução do comando1

19 19 Exercício Escrever um algoritmo que lê 5 valores, e conta quantos destes valores são negativos, escrevendo esta informação. #include main(){ int numero, cont, neg=0; for (cont=0; cont<5; cont++) { printf ("\nDigite um numero inteiro: "); scanf ("%d", &numero); if (numero<0) neg=neg+1; } printf ("\nO numero de valores negativos e %d\n", neg); system("pause"); }

20 Cuidado!!! Se o valor da variável de controle do comando for for alterado explicitamente dentro do bloco de repetição … Exemplo: saída: 20 #include main(){ int I; for (I=1; I<=10; I++){ printf (%d\n",I); if (I==5) I=8; } system("pause"); } Press any key to continue...

21 Lembre-se!!! Qual o valor da variável de controle do for após a execução do comando for? O valor que foi testado e não passou na condição. Exemplo: saída: 21 #include main(){ int cont; for (cont=1; cont<=10; cont=++){ printf ("%d\n", cont); } printf("valor apos o FOR: %d\n",cont); system("pause"); } valor apos o FOR: 11 Press any key to continue...

22 Só use quando estritamente necessário: E para forçar o término da repetição? Use um break. Exemplo : saída: apos o FOR: 5 Press any key to continue... #include main(){ int I; for (I=1; I<=10; I=I+1){ printf ("%d\n",I); if (I==5) break; } printf(apos o FOR: %d\n",I); system("pause"); } Atenção para o valor de saída da variável de controle

23 Cuidado!! Faça sempre um teste de mesa com os valores inicial e final do loop do comando for, pois a maioria dos erros são na primeira ou na última execução do laço. Erros comuns: –Executar o laço (repetição) uma vez a mais ou a menos que o desejado –Atribuir o valor inicial de alguma variável dentro do laço, quando deveria ser fora –Não atribuir o valor inicial de uma variável (principalmente em for s aninhados) 23

24 Exercícios Faça um programa para calcular e escrever o valor de S: Faça um programa para calcular os 20 primeiros termos da série de Fibonacci Faça um programa para calcular os números primos menores que


Carregar ppt "1 Introdução a Programação Estruturas de repetição Prof. Luis Otavio Alvares Parte deste material é adaptado de lâminas das Profas. Patrícia Jaques, Mônica."

Apresentações semelhantes


Anúncios Google