Por que repetir
Objetivo da aula
Reconhecer padrões que pedem iteração em vez de cópia de código.
Regra desta aula: vamos assumir que você nunca viu este assunto antes. Nenhum termo importante será usado sem explicação e todo exemplo deve ser entendido linha por linha, não apenas copiado.
Começando do zero
Repetição aparece quando uma mesma regra precisa ser aplicada várias vezes. Em vez de copiar a mesma linha dez, cem ou mil vezes, usamos estruturas de repetição. O laço não serve apenas para “economizar digitação”; ele representa a ideia de repetir uma operação enquanto houver elementos ou enquanto uma condição continuar válida.
Uma imagem mental para entender
Imagine lavar uma pilha de pratos. A regra é sempre parecida: pegue um prato, lave, enxágue, guarde e repita enquanto ainda houver pratos. Você não escreve uma instrução diferente para cada prato. Um laço representa justamente esse padrão repetitivo.
Conceitos essenciais, sem pular etapas
Repetição conhecida
Quando sabemos quantas vezes ou quais elementos serão percorridos, for costuma ser natural.
Repetição por condição
Quando não sabemos previamente quantas voltas serão necessárias e repetimos enquanto uma condição for verdadeira, while costuma ser adequado.
Corpo do laço
É o bloco que executa a cada repetição. Em Python, ele é definido pela indentação.
Progresso
Um laço precisa avançar em direção ao fim: consumir elementos, alterar contador ou modificar a condição. Sem progresso, um while pode nunca terminar.
Estado entre voltas
Valores como contador ou soma acumulada mudam ao longo das iterações e permitem que cada volta contribua para um resultado final.
Modelo mental
ESTADO INICIAL → TESTE/PRÓXIMO ELEMENTO → CORPO → PROGRESSO → REPETIR → FIM
Exemplo 1 — primeiro veja o programa inteiro
for numero in [1, 2, 3, 4]:
quadrado = numero * numero
print(numero, "ao quadrado =", quadrado)
Agora vamos ler linha por linha
- A lista contém quatro valores que serão percorridos em ordem.
- A cada volta,
numerorecebe o próximo valor. - O cálculo do quadrado é executado uma vez para cada elemento.
- Quando não existem mais elementos, o laço termina automaticamente.
Saída esperada
1 ao quadrado = 1
2 ao quadrado = 4
3 ao quadrado = 9
4 ao quadrado = 16
Exemplo 2 — o mesmo conceito em outra situação
tarefas_restantes = 3
while tarefas_restantes > 0:
print("Executando uma tarefa")
tarefas_restantes = tarefas_restantes - 1
print("Fim")
A variável diminui em cada volta. Quando chega a zero, a condição se torna falsa e o laço termina. Se esquecêssemos a atualização, o laço continuaria indefinidamente.
Experimento guiado
Não pule esta parte. Programação só começa a fazer sentido quando você prevê um resultado, executa e compara a previsão com o que realmente aconteceu.
- Antes de executar, conte quantas vezes cada exemplo deve repetir.
- No primeiro exemplo, adicione 5 à lista e observe uma iteração extra.
- No segundo, comente a linha que diminui
tarefas_restantes, entenda por que isso criaria um laço infinito e desfaça antes de executar sem controle. - Escreva em português a condição de término de cada laço.
Mini desafio
Use um laço para mostrar os números 1, 2, 3, 4 e 5, um por linha.
Solução comentada
for numero in [1, 2, 3, 4, 5]:
print(numero)
Depois de executar a solução, altere pelo menos um valor e explique por que o novo resultado mudou. Se você só copiou e não consegue explicar cada linha, refaça o desafio em uma versão menor.
Erros comuns e por que acontecem
- Copiar a mesma instrução várias vezes quando o problema é naturalmente repetitivo.
- Criar um
whilesem alterar nada que torne a condição falsa. - Não saber qual é a condição de término do laço.
- Alterar a coleção de forma confusa enquanto a percorre, sem entender as consequências.
Cheque se você realmente entendeu
Quando um laço é útil?
Resposta: Quando uma mesma regra deve ser aplicada repetidamente a vários casos ou enquanto uma condição durar.
Qual risco existe em um while sem progresso?
Resposta: Ele pode se tornar infinito.
O que é uma iteração?
Resposta: Uma execução do corpo do laço.
Resumo em linguagem simples
Nesta aula, o ponto central foi Por que repetir. Tente explicar o modelo ESTADO INICIAL → TESTE/PRÓXIMO ELEMENTO → CORPO → PROGRESSO → REPETIR → FIM sem olhar a tela. Depois, escreva um exemplo próprio menor que os apresentados. Esse exercício de explicação é parte do aprendizado, não um extra.
Conexão com a próxima aula
Na próxima aula, while e repetição por condição, vamos aproveitar exatamente o que foi construído aqui. Você não precisa memorizar tudo; precisa conseguir reconhecer o conceito e reconstruí-lo com raciocínio e testes.