Aula 05 - Estruturas de Repetição (for/while)
🎯 Objetivos da Aula
- [ ] Entender o conceito de Loops (Laços de Repetição)
- [ ] Dominar o loop
fore a funçãorange() - [ ] Dominar o loop
while - [ ] Saber quando usar cada um (
forvswhile) - [ ] Controlar loops com
breakecontinue
📚 Conteúdo
1. O que são Loops?
Imagine que você precisa imprimir o nome de 100 alunos. Escrever 100 print() seria cansativo e nada inteligente.
Loops permitem repetir um bloco de código várias vezes.
graph TD
A[Início] --> B{Condição Verdadeira?}
B -- Sim --> C[Executar Bloco]
C --> B
B -- Não --> D[Sair do Loop]
2. O Loop for (Para)
O for é usado quando sabemos quantas vezes queremos repetir algo, ou para percorrer itens de uma coleção (que veremos na próxima aula).
Para repetir um número exato de vezes, usamos a função auxiliar range().
range(inicio, fim, passo):
- range(5): Gera 0, 1, 2, 3, 4 (O limite final nunca entra!)
- range(1, 6): Gera 1, 2, 3, 4, 5
- range(0, 10, 2): Gera 0, 2, 4, 6, 8 (pula de 2 em 2)
A variável
i(índice) atualiza automaticamente a cada volta.
3. O Loop while (Enquanto)
O while repete o bloco enquanto uma condição for verdadeira.
É usado quando não sabemos quantas vezes vamos repetir (ex: esperar o usuário digitar a senha certa).
⚠️ Perigo: Loop Infinito! Se a condição nunca ficar falsa, o programa roda para sempre.
4. Controle de Loops (break e continue)
Às vezes precisamos interromper o fluxo natural do loop.
break: Para o loop imediatamente (sai dele).continue: Pula a volta atual e vai para a próxima (volta pro início).
# Exemplo de break
for i in range(10):
if i == 5:
print("Encontrei o 5, parando!")
break
print(i)
# Imprime 0, 1, 2, 3, 4... e para.
# Exemplo de continue
for i in range(5):
if i == 2:
continue # Pula o 2
print(i)
# Imprime 0, 1, 3, 4
5. for vs while
| Loop | Melhor uso |
|---|---|
| for | Quando você sabe o número de repetições (ex: "repetir 10 vezes", "para cada item da lista"). |
| while | Quando a repetição depende de uma condição externa (ex: "enquanto o jogo não acabar", "enquanto o usuário quiser"). |
💻 Em Prática
Vamos criar uma Tabuada personalizada.
# tabuada.py
numero = int(input("Tabuada de qual número? "))
print(f"--- Tabuada do {numero} ---")
for i in range(1, 11):
resultado = numero * i
print(f"{numero} x {i} = {resultado}")
📝 Resumo
for: Ideal para sequências definidas (range()).while: Ideal para condições lógicas (enquanto...).range(n): Gera números de 0 a n-1.break: Sai do loop.continue: Pula para a próxima iteração.- Cuidado com loops infinitos no
while!
🎯 Próximos Passos
-
Acessar Slides
-
Quiz
-
Exercícios
-
Projeto