Upload
adriano-j-p-nascimento
View
31.240
Download
1
Embed Size (px)
DESCRIPTION
Apresentacao_06 Algoritmos - Estrutura de Repetição
Citation preview
Algoritmos
Professora: Maely Moraes
Código: DCC 105
Carga-horária: 60 horas-aula
Estrutura de Repetição
Roteiro
�Estrutura de Repetição � Conceito� Com verificação no início� Com verificação no fim� Com contagem
Estrutura de Repetição
�Permitem que uma seqüência de comandos seja executada repetidamente, até que determinada condição de interrupção seja satisfeita.
�São também conhecidas como laços ou malhas.
�Cada repetição do conjunto de comandos é chamada iteração.
Estrutura de Repetição
�A repetição de comandos em um laço pode seguir um dos seguintes critérios:� Por Condição (Verificação no início)� Por Condição (Verificação no fim)� Por Contagem
�Com verificação no início
� Permite que comandos sejam repetidos enquanto uma condição não é atendida.
� Sintaxe:
enquanto <expressão-lógica> faca
<seqüência-de-comandos>
fimenquanto
Estrutura de Repetição
Estrutura de Repetição
�Exemplo: Exibe os números de 1 a 10 em ordem crescente.
algoritmo “com_enquanto_faca”
var j: inteiro
inicio
j <- 1
enquanto j <= 10 faca
escreva (j:3) //escreve o valor de j em 3 espaços
j <- j + 1
fimenquanto
fimalgoritmo
�Com verificação no fim
� Permite que comandos sejam repetidos até que uma condição seja atendida.
� Sintaxe:repita
<seqüência-de-comandos>
ate <expressão-lógica>
Estrutura de Repetição
�Exemplo: Exibe os números de 1 a 10 em ordem crescente.
algoritmo “com_repita”var j: inteiro
inicio
j <- 1
repita
escreva (j:3)
j <- j + 1
ate j > 10
fimalgoritmo
Estrutura de Repetição
�Com contagem
� Permite que comandos sejam repetidos um determinado número de vezes.
� Sintaxe: para <variável> de <valor-inicial> ate
<valor-limite> [passo <incremento>] faca
<seqüência-de-comandos>
fimpara
Estrutura de Repetição
� Exemplo: Exibir os números de 1 a 10 em ordem crescente.
Estrutura de Repetição
algoritmo “com_para"
var j: inteiro
inicio
para j de 1 ate 10 faca
escreva (j:3)
fimpara
fimalgoritmo
algoritmo “com_para_passo"
var j: inteiro
inicio
para j de 10 ate 1 passo -1 faca
escreva (j:3)
fimpara
fimalgoritmo
�Observações da estrutura para� O identificador tem de ser do tipo inteiro;� Os valores inicial e final poderão ser constantes
numéricas inteiras, funções que retornem números inteiros ou expressões que retornem números inteiros;
� O valor que é incrementado ou decrementado da variável poderá ser constante ou uma outra variável;
� Esta estrutura é a própria expressão de uma PA.
Estrutura de Repetição
�Observações da estrutura para� O número de repetições do bloco de comandos será
igual ao NÚMEROS DE TERMOS DA SÉRIE, portanto, na maioria das vezes, não importam os valores que a variável que controla a repetição assumirá.
� A variável que controla a repetição deverá ser declarada e poderá ser impressa se precisarmos dela para numerar uma lista, posicionar etc.
� A variável que controla a repetição JAMAIS aparecerá num comando de leitura dentro do bloco de repetição.
Estrutura de Repetição
�Para dentro de Para� Imagine você dando uma volta no Parque Anauá: passa uma vez
pela lagoa principal, uma vez pela entrada do parque, uma vez pelo Palco, uma pela ponte; esse trajeto representa seus algoritmos feitos até agora com os comandos apresentados.
� Imagine que seu preparo físico melhorou e agora você consegue dar três ou cinco voltas ou, quem sabe, até dez voltas no parque; isso significa que você passará dez vezes pelos mesmos lugares. Esse exemplo representa a estrutura do para.
� Imagine agora que você passou a dar três voltas no parque mas em frente ao Palco você fará cinco abdominais. Se, em cada volta você faz cinco abdominais, ao final, você terá feito 15 abdominais e terá dado três voltas no parque. Isso representa um Para dentro de um Para.
Estrutura de Repetição
�Para dentro de Para
Estrutura de Repetição
�Para dentro de Para
Estrutura de Repetição
�Considerações Finais� Número de repetições pode ser
indeterminado, mas não deve ser infinito (loop).
� As formas de laços de repetição são equivalentes entre si.
� A escolha entre uma e outra é arbitrária.
Estrutura de Repetição
�Dicas� Não use enquanto no lugar do para, só se
não tiver alternativa� Na dúvida entre enquanto e repita até (faça
enquanto), use enquanto
� Para simular a estrutura do repita até (faça enquanto), usando a estrutura do enquanto, basta iniciar a variável da condição com qualquer valor válido
Estrutura de Repetição
� Elabore um algoritmo que leia N números, calcule a soma e mostre-a no final. Ex: Lista de números: 3,5,7,4,3,2,1,9,12,15,9
Soma dos números = 70
� Elabore um algoritmo que leia N números, calcule a soma e a média dos números lidos, mostrando no final. Ex: Lista de números: 3,5,7,4,3,2,1,9,12,15,9
Soma dos números = 70Média = 70 / 11 = 6,3636
� Faça um algoritmo que leia um número inteiro e imprima o seu fatorial .
� Faça um algoritmo que imprima os 50 primeiros termos da seqüência de Fibonacci: 1,1,2,3,5,8,13,21,...
Exercícios
Exercícios
� Calcular a soma dos 30 primeiros termos das seqüências:
1 – 1 / 2 + 1 / 4 – 1 / 6 + 1 / 8 . . .
63 + 61 + 59 / 2 + 57 / 3 + . . .
480/10 – 475 / 11 + 470 / 12 ....
� Leia m e n e calcule a soma de todos os números ímpares entre n e m
� Leia duas datas no formato DD/MM/AAAA e calcule a diferença entre elas em anos, meses e dias
� Leia n números e imprima o maior, o menor e média dos pares entre 4 e 20.
� Faça um algoritmo que imprima os 50 primeiros termos da seqüência: 4/1, – 12/5 , 36/9, -108/13, .
Referências Bibliográficas
� LOPES, A.: Introdução à Programação: 500 algoritmos resolvidos, Campus, 2002.
� Manual do VisuAlg