06 Comandos Repeticao 2
06 Comandos Repeticao 2
06 Comandos Repeticao 2
Túlio Toffolo
www.toffolo.com.br
Departamento de Computação
Universidade Federal de Ouro Preto
Agenda
1. O comando for
2. A função range
3. Qual comando de repetição utilizar?
4. Exemplos e exercícios
O comando for
Laços de repetição
Em um laço controlado logicamente, os comandos (corpo do
laço) são repetidos enquanto uma expressão lógica for
verdadeira.
while
Em um laço controlado por contador ou por um iterador, os
comandos (corpo do laço) são repetidos um determinado
número de vezes.
for
1 ...
2 for <Variável> in <Sequência>:
3 <Comando 1>
4 <Comando 2>
5 ...
6 <Comando n>
7 ...
ini=0
passo=1
Resulta em :
1 0
2 1
3 2
4 3
5 4
6 5
7 6
8 7
9 8
10 9
Resulta em :
1 0
2 1
3 2
4 3
5 4
6 5
7 6
8 7
9 8
10 9
Resulta em :
1 10
2 11
3 12
4 13
5 14
6 15
7 16
8 17
9 18
10 19
Resulta em :
1 1
2 4
3 7
4 10
5 13
6 16
7 19
Resulta em :
1 10
2 9
3 8
4 7
5 6
6 5
7 4
8 3
9 2
10 1
for
1/7 Túlio Toffolo | Aula: Estruturas de Repetição (2) – Qual comando de repetição utilizar?
Comandos while e for
Resolvemos o problema a seguir usando while:
2/7 Túlio Toffolo | Aula: Estruturas de Repetição (2) – Qual comando de repetição utilizar?
Comandos while e for
Usando o for, podemos simplificar o código:
3/7 Túlio Toffolo | Aula: Estruturas de Repetição (2) – Qual comando de repetição utilizar?
Comandos while e for
Usando o for, podemos simplificar o código:
4/7 Túlio Toffolo | Aula: Estruturas de Repetição (2) – Qual comando de repetição utilizar?
Comandos while e for
Observe, agora, o exemplo a seguir:
Crie um programa que calcula o IMC do usuário até ele informar que
não quer mais calculá-lo. Exemplos de execução:
5/7 Túlio Toffolo | Aula: Estruturas de Repetição (2) – Qual comando de repetição utilizar?
Comandos while e for
1 resp = input('Deseja calcular o IMC? (S/N) ')
2 while resp == 'S':
3 # Capturando dados para cálculo do IMC
4 altura = float(input('Qual sua altura (em metros)? '))
5 peso = float(input('Qual seu peso (em kg)? '))
6 imc = peso / altura ** 2
7
8 # Imprimindo resultado
9 print(f'\nSeu IMC é {imc:.2f}\n')
10
11 # Verificando com usuário se execução deve continuar...
12 resp = input('Deseja calcular o IMC? (S/N) ')
6/7 Túlio Toffolo | Aula: Estruturas de Repetição (2) – Qual comando de repetição utilizar?
Comandos while e for
1 resp = input('Deseja calcular o IMC? (S/N) ')
2 while resp == 'S':
3 # Capturando dados para cálculo do IMC
4 altura = float(input('Qual sua altura (em metros)? '))
5 peso = float(input('Qual seu peso (em kg)? '))
6 imc = peso / altura ** 2
7
8 # Imprimindo resultado
9 print(f'\nSeu IMC é {imc:.2f}\n')
10
11 # Verificando com usuário se execução deve continuar...
12 resp = input('Deseja calcular o IMC? (S/N) ')
Não, pois não sabemos quantas vezes o laço será repetido. Neste
caso, não há como definir uma <Sequência>.
7/7 Túlio Toffolo | Aula: Estruturas de Repetição (2) – Qual comando de repetição utilizar?
Exemplos e exercícios
Exemplo 1
Um número natural é primo se ele possui apenas dois divisores
distintos. Assim, um número maior que 1 é primo se for divisível
apenas por si próprio e por 1. Crie uma programa que imprime se
um número é primo ou não.
1 Digite um número: 16
2 16 NÃO é um número primo!
1 Digite um número: 3
2 3 é um número primo!
O resultado de 1 // 2 é igual a 0
O resultado de 3 // 2 é igual a 1
O resultado de 4 // 2 é igual a 2
1 Digite o valor de x: 3
2 Digite o valor de y: 6
3 Os valores devem ser pares e tais que x < y.
4
5 Digite o valor de x: 10
6 Digite o valor de y: 8
7 Os valores devem ser pares e tais que x < y.
8
9 Digite o valor de x: 4
10 Digite o valor de y: 14
11
12 ****
13 ******
14 ********
15 **********
16 ************
17 **************