1 / 33

Lógica de Programação: Estruturas de repetição Prof. Luis Otavio Alvares

Lógica de 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. Faça um algoritmo para ler 4 números e mostrar a sua média. Início Ler N1 Ler N2 Ler N3 Ler N4

maida
Download Presentation

Lógica de Programação: Estruturas de repetição Prof. Luis Otavio Alvares

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lógica de 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. Faça um algoritmo para ler 4 números e mostrar a sua média • Início • Ler N1 • Ler N2 • Ler N3 • Ler N4 • Media = (N1+N2+N3+N4)/4 • Mostrar Media • Fim Início soma = 0 Ler N soma = soma+N Ler N soma = soma+N Ler N soma = soma+N Ler N soma = soma+N Media = soma/4 Mostrar Media Fim

  3. Faça um algoritmo para ler 100 números e mostrar a sua média!!!

  4. Lógica de programação • 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. • As principais estruturas de repetição são: • PARA...ATÉ...FAÇA • ENQUANTO...FAÇA • REPITA...ATÉ

  5. Estruturas de repetição Lógica de programação Para...até...faça : Para <variavel> = <inicio> até <fim> faça <instruções> Enquanto...Faça : Enquanto <condição> faça <instruções> Repita ...Até : Repita <instruções> até <condição>

  6. Exemplo • 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 • Para cont =1 até 50 faça 3.1 ler N 3.2 soma = soma + N 4. Media = soma / 50 • Mostrar media • Fim

  7. Lógica de programação PARA...ATÉ...FAÇA • Formato: Para <variável> = <valor inicial> até <valor final> faça <ações> • Significado: A <variável> é inicializada com <valor inicial>. Após cada execução das <ações>, é somado 1 à <variável> e repete-se as <ações>, continuando assim até que a <variável> atinja o <valor final>, quando executa as <ações> pela última vez. • 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 <variável> inicia com <valor inicial> e é incrementada a cada ciclo (podendo-se inclusive aproveitar seu valor dentro do ciclo), e que as <ações> serão repetidas até que a <variável> tenha o <valor final>.

  8. Lógica de programação • Exemplo da estrutura PARA...ATÉ...FAÇA:“Mostrar os quadrados dos inteiros de 3 a 11.” • Pseudocódigo: Para CONT = 3 até 11 faça 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.” Isto será repetido 9 vezes.

  9. E se eu quisesse calcular a média de N números? Lógica de programação • 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 faça 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 que calcule a soma dos números inteiros entre 5 e 16, inclusive. Exemplo de solução: Início Soma=0 Para Num=5 até 16 faça Soma=Soma + Num Mostrar Soma Fim

  11. Faça um algoritmo para mostrar os 30 primeiros números ímpares 1. Início 2. Para I=1 até 30 faça 2.1 impar=I*2-1 2.2 Mostrar impar 3. Fim

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

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

  14. Exercício • Faça um algoritmo para informar se um número lido é primo ou não. Faça um teste de mesa para testar a sua solução!!!

  15. Exemplo de solução 1. Início 2. Mostrar “informe o número” 3. Ler N 4. ehprimo=1 5. para J=2 até N-1 faça se N mod J =0 entãoehprimo=0 6. Se ehprimo=1 entãomostrar “ o número eh primo” senãomostrar “o númeronão eh primo” 7. Fim

  16. Outra solução Início 2. Mostrar “informe o número” 3. Ler N 4. tot=0 5. paraJ=1 atéN faça se N mod J =0 entãotot=tot+1 6. Se tot=2 entãomostrar “ o número eh primo” senãomostrar “o númeronão eh primo” 7. Fim

  17. 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

  18. Exemplo de solução • Início • Soma=2 >>> 2 é o primeiro primo 3. Para N=3 até 99 faça 3.1 ehprimo=1 3.2 para J=2 até I-1 faça 3.2.1 se N mod J =0 então ehprimo=0 3.3 se ehprimo=1 então soma=soma+N 4 mostrar soma 5. Fim Aqui ve se N é primo

  19. Exercício Faça um algoritmo para calcular e mostrar os 20 primeiros termos da série de Fibonacci: O primeiro termo é zero O segundo termo é um Os demais são a soma dos dois termos anteriores 0, 1, 1, 2, 3, 5, 8, 13, ….

  20. Exemplo de solução 1. Início 2. Mostrar 0 3. Mostrar 1 4. penultimo=0 5. ultimo=1 6. Para I=3 até 20 faça 6.1 proximo=ultimo + penultimo 6.2 mostrar proximo 6.3 penultimo=ultimo 6.4 ultimo=proximo 7. Fim

  21. Lógica de programação ENQUANTO ... FAÇA... • Formato: Enquanto <operação lógica> faça<ações> • Significado: A <operação lógica> é testada. Se for verdadeira, então executar <ações> e em seguida testar novamente a operação lógica. Este ciclo prossegue até que em algum teste a operação lógica resulte em falso. • Nesta estrutura temos novamente, assim como nas estruturas de decisão, uma operação lógica determinando se devemos continuar a repetir (resultado V) ou parar de repetir (resultado F) as ações. • Devemos garantir que o dado testado na operação lógica tenha seu valor modificado por alguma das ações repetidas, senão nunca teremos um resultado F no teste e a repetição permanecerá num ciclo infinito (loop)!

  22. Lógica de programação Exemplo da estrutura ENQUANTO...FAÇA: Ler números positivos pelo teclado e mostrar o maior número lido (encerrar a leitura quando for lido o número 0) Pseudocódigo: Início MAIOR  0(MAIOR por enquanto é o menor valor possível) N  1(só para o 1.o teste funcionar...) Enquanto (N <> 0) faça Ler N(aqui o valor de N muda, é a entrada do usuário) Se (N > MAIOR) então MAIOR  N Mostrar MAIOR(isto só executa quando o enquanto terminar) Fim

  23. Exercício • Faça um algoritmo para mostrar os 30 primeiros números ímpares

  24. Exemplos de solução • c=1 • impar=1 3. Enquanto c<=30 faça 3.1 se impar mod 2 = 1 (é um número ímpar) 3.1.1 então mostrar impar 3.1.2 c=c+1 3.2 impar=impar+1 1. I=0 2. Enquanto I<30 faça 2.1 I=I+1 2.2 impar=I*2-1 2.3 mostrar impar • I=0 • Impar=1 • 3. Enquanto I<30 faça • 3.1 mostrarimpar • 3.2 impar=impar+2 • 3.3 I=I+1

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

  26. Exemplo de solução 1. Início • S=0 • I=1 3. Enquanto I<=50 faça 3.1 S=S+(I*2-1)/I 3.2 I=I+1 4. Mostrar S 5. Fim

  27. Exercício • Faça um algoritmo que encontre o primeiro número inteiro positivo que elevado ao quadrado seja maior que este número multiplicado por 5.

  28. Exemplo de solução 1. início 2. I=1 3. enquanto I*I <=I*5 faça 3.1 I=I+1 4. mostrar I 5. fim

  29. Lógica de programação REPITA ... ATÉ • Formato: repita <ações> até <operação lógica> • Significado: As ações são executadas e depois a <operação lógica> é testada. Se for falsa, executar novamente <ações> e em seguida testar novamente a operação lógica. Este ciclo prossegue até que em algum teste a operação lógica resulte em verdadeiro. • As <ações> serão executadas pelo menos uma vez.

  30. Exercício • Faça um algoritmo para mostrar os 30 primeiros números ímpares

  31. Exemplo de solução 1. início 2. I=0 3. repita 3.1 I=I+1 3.2 impar=I*2-1 3.3 mostrarimpar até I>=30 4. fim

  32. Exercício • Faça um algoritmo que fique num ciclo de leitura até que o usuário informe um número positivo (i.e., ignorar números não positivos) e depois mostre a raiz quadrada do número positivo informado.

  33. Exemplo de solução início repita mostrar “digite um número positivo” ler N até N > 0 mostrar “a raiz quadrada deste número e’: “ mostrar sqrt(N) fim

More Related