Buscar

Aula13 - For - python

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 3, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 6, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você viu 9, do total de 25 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Prévia do material em texto

Aula 13 – Estrutura de Repetição - 
For 
Computação I - 2014/1 2 
Estrutura de repetição 
 
 
 
Permite que o programador especifique que o programa deve 
repetir um conjunto de comandos enquanto uma dada condição 
for verdadeira. 
 
Até o momento vimos o while: 
 
While condição: 
 conjunto de comandos 
 
• Com while podemos implementar qualquer algoritmo que envolva 
repetição. Porém o while é mais recomendado quando não se sabe ao 
certo quantas vez a repetição será feita. 
 
 
 
 
 
 
Computação I - 2014/1 3 
Estrutura de repetição 
 
 
 
Lembra do exercício abaixo? 
Faça uma função que gere números aleatórios entre 1 e 10 e calcule a soma 
destes números até que seja gerado o número 5. 
 
 
 
 
 
 
 
 
 
• Neste caso, o número de vezes que os comandos do while irão repetir 
depende de quando sair o número 5. Podem ser 2 vezes ou 1000 vezes! 
 
 
 
 
 
 
 
 
Computação I - 2014/1 4 
Estrutura de repetição 
 
 
 
Agora observe o exercício abaixo: 
 
Faça uma função some 10 números gerados aleatoriamente no intervalo de 
1 a 5. 
 
Como seria essa função com while? 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Computação I - 2014/1 5 
Estrutura de repetição 
 
 
 
Agora observe o exercício abaixo: 
Faça uma função some 10 números gerados aleatoriamente no intervalo de 
1 a 5. 
 
 
 
 
 
 
 
 
 
 
• O número de repetições é fixo? 
 
 
 
 
 
 
 
 
Computação I - 2014/1 6 
Estrutura de repetição - For 
 
 
 
Agora observe o exercício abaixo: 
Faça uma função some 10 números gerados aleatoriamente no intervalo de 
1 a 5. 
 
• O número de repetições será sempre 10, independente dos números 
aleatórios que estão sendo gerados. 
 
• Neste caso, uma opção é usar a estrutura de repetição For, para 
simplificar o código. 
 
 
 
 
 
 
 
Computação I - 2014/1 7 
Estrutura de repetição - For 
 
 
 
Agora observe o exercício abaixo: 
Faça uma função some 10 números gerados aleatoriamente no intervalo de 
1 a 5. 
 
 
 
 
 
 
 
 
for var in range(...): 
 comandos 
Computação I - 2014/1 8 
Estrutura de repetição - For 
 
 
 
Agora observe o exercício abaixo: 
Faça uma função some 10 números gerados aleatoriamente no intervalo de 
1 a 5. 
 
 
 
 
 
 
 
 
for var in range(...): 
 comandos 
A variável contador 
vai assumir os valores 
0, 1, 2, 3, 4, 5, 6, 7, 8 e 9 
Computação I - 2014/1 9 
Estrutura de repetição - For 
 
 
 
Observe a diferença entre o uso do while e o uso do for: 
 
 
 
 
 
 
 
 
• Quando se usa For, o contador é inicializado automaticamente com o 
valor 0 ( no caso de range(numero)), ou com outro valor definido no range. 
 
• O For também incrementa o contador automaticamente de quantos passos 
quanto estiver especificado no range. 
 
 
 
 
 
 
 
 
10 
Estrutura de repetição - For 
 
 
 
A função range(...) pode ter 1, 2 ou 3 argumentos: 
 
✔ range(numero): faz com que a variável do for assuma valores de 
 0 a numero-1 
✔Exemplo: for x in range(10)  x recebe 0,1,2,...,9 
 
✔ range(inf,sup): faz com que a variável do for assuma valores de inf a sup-1 
Exemplo: for x in range(3,8)  x recebe 3,4,5,6,7 
 
✔ range(inf, sup, inc): faz com que a variável do for assuma valores de 
 inf a sup-1 com incremento de inc 
Exemplo: for x in range(3,8,2)  x recebe 3,5,7 
Computação I - 2014/1 
11 
Estrutura de repetição - For 
 
 
 
A função range(...) pode ter 1, 2 ou 3 argumentos: 
 
✔ range(numero): faz com que a variável do for assuma valores de 
 0 a numero-1 
✔Exemplo: for x in range(10)  x recebe 0,1,2,...,9 
 
✔ range(inf,sup): faz com que a variável do for assuma valores de inf a sup-1 
Exemplo: for x in range(3,8)  x recebe 3,4,5,6,7 
 
✔ range(inf, sup, inc): faz com que a variável do for assuma valores de 
 inf a sup-1 com incremento de inc 
Exemplo: for x in range(3,8,2)  x recebe 3,5,7 
Computação I - 2014/1 
ATENÇÃO: 
COMEÇA COM ZERO 
12 
Estrutura de repetição - For 
 
 
 
A função range(...) pode ter 1, 2 ou 3 argumentos: 
 
✔ range(numero): faz com que a variável do for assuma valores de 
 0 a numero-1 
✔Exemplo: for x in range(10)  x recebe 0,1,2,...,9 
 
✔ range(inf,sup): faz com que a variável do for assuma valores de inf a sup-1 
Exemplo: for x in range(3,8)  x recebe 3,4,5,6,7 
 
✔ range(inf, sup, inc): faz com que a variável do for assuma valores de 
 inf a sup-1 com incremento de inc 
Exemplo: for x in range(3,8,2)  x recebe 3,5,7 
Computação I - 2014/1 
São equivalentes: 
range( 10 ) 
range( 0, 10 ) 
range( 0, 10, 1 ) 
13 
Estrutura de repetição - For 
 
 
 
>>> range(3) 
 
 
>>> range(2,5,2) 
 
 
>>> range(5,2,-2) 
 
 
Computação I - 2014/1 
14 
Estrutura de repetição - For 
 
 
 
>>> range(3) 
 [0,1, 2] 
 
>>> range(2,5,2) 
 [2,4] 
 
>>> range(5,2,-2) 
 [5,3] 
 
Isto são listas. 
Computação I - 2014/1 
15 
Estrutura de repetição - For 
 
 
 
a) Variável de controle de 1 a 100 com incrementos de 1 
 for contador in range( 1, 101 ): 
b) Variável de controle de 100 a 1 com incrementos de –1 
 for contador in range( 100, 0, –1 ): 
c) Variável de controle de 7 a 77 com incrementos de 7. 
 
d) Variável de controle de 20 a 2 com incrementos de -2. 
 
e) Variável de controle sobre a seguinte sequência de valores: 
 2, 5, 8, 11, 14,17, 20. 
 
f) Variável de controle sobre a seguinte sequência de valores: 
 99, 88, 77, 66, 55, 44, 33, 22, 11, 0. 
 
 
Exercício 
Computação I - 2014/1 
16 
Estrutura de repetição - For 
 
 
 
a) Variável de controle de 1 a 100 com incrementos de 1 
 for contador in range( 1, 101 ): 
b) Variável de controle de 100 a 1 com incrementos –1 
 for contador in range( 100, 0, –1 ): 
c) Variável de controle de 7 a 77 com incrementos de 7. 
 for contador in range( 7, 78, 7 ): 
d) Variável de controle de 20 a 2 com incrementos de -2. 
 for contador in range( 20, 1, -2 ): 
e) Variável de controle sobre a seguinte sequência de valores: 
 2, 5, 8, 11, 14,17, 20. 
 for contador in range( 2, 21, 3 ): 
f) Variável de controle sobre a seguinte sequência de valores: 
 99, 88, 77, 66, 55, 44, 33, 22, 11, 0. 
 for contador in range( 99, -1, -11 ): 
 
Exercício 
Computação I - 2014/1 
17 
Estrutura de repetição - For 
 
 
 
Faça um programa que determina a soma de todos os números pares 
 desde 100 até 200. (Usando For ao invés de While) 
Exercício 
Computação I - 2014/1 
18 
Estrutura de repetição - For 
 
 
 
Faça um programa que determina a soma de todos os números pares 
 desde 100 até 200. (Usando For ao invés de While) 
Exercício 
Computação I - 2014/1 
def somaPares(): 
 
 Soma = 0 
 for Par in range(100,202,2) : 
 Soma = Soma + Par 
 return Soma 
19 
Estrutura de repetição 
 
 
 
Comandos que permitem alterar o fluxo da estrutura de repetição. 
Vimos o uso deles no while. Também podem ser usados com for. 
Break e Continue 
O que aparecerá escrito na tela? 
def Exemplo(): 
 for x in range(1, 11): 
 if x == 5: 
 break 
 print x 
 return “terminou” 
 
Computação I - 2014/1O print foi colocado só para 
Visualizar o passo a passo na tela 
20 
Estrutura de repetição 
 
 
 
Comandos que permitem alterar o fluxo da estrutura de repetição. 
Vimos o uso deles no while. Também podem ser usados com for. 
Break e Continue 
>> Exemplo() 
1 
2 
3 
4 
terminou 
def Exemplo(): 
 for x in range(1, 11): 
 if x == 5: 
 break 
 print x 
 return “terminou” 
 
Computação I - 2014/1 
21 
Estrutura de repetição 
 
 
 
Comandos que permitem alterar o fluxo da estrutura de repetição. 
Break e Continue 
O que aparecerá escrito na tela? 
def Exemplo1(): 
 for x in range( 1, 11 ): 
 if x == 5: 
 continue 
 print x 
 return “terminou” 
 
Computação I - 2014/1 
O print foi colocado só para 
Visualizar o passo a passo na tela 
22 
Estrutura de repetição 
 
 
 
Comandos que permitem alterar o fluxo da estrutura de repetição. 
Break e Continue 
>>> Exemplo1() 
1 
2 
3 
4 
6 
7 
8 
9 
10 
terminou 
def Exemplo1(): 
 for x in range( 1, 11 ): 
 if x == 5: 
 continue 
 print x 
 return “terminou” 
 
Computação I - 2014/1 
23 
Estrutura de repetição - For 
 
 
 1) Faça uma função que calcule o valor de N!, onde N é passado 
como parâmetro. (Sem usar o factorial do módulo Math). 
 
2) Faça uma função que determina se um dado número positivo é primo ou 
não. 
 
3) Faça um programa que conte quantos divisores um dado número tem. 
Exemplo: Se o número for 10, os divisores são: 1, 2, 5 e 10; 
 Total de 4 divisores. 
 
 
 
 
 
Exercícios – Resolva usando for 
Computação I - 2014/1 
24 
Estrutura de repetição 
 
 
 
Exercícios – Resolva usando for 
4) Faça uma função que calcule e retorne o valor de 
S = (1/1)+(3/2)+(5/3)+(7/4)+....+(99/50) 
 
 
5) Faça uma função que calcule e retorne o valor de 
S = (1/1)-(2/4)+(3/9)-(4/16)+....-(10/100) 
 
 
Computação I - 2014/1 
25 
Aula 13 – Estrutura de Repetição 
- For 
Computação I - 2014/1

Outros materiais