break, continue e desenho de laços
Objetivo da aula
Interromper ou pular iterações sem tornar o fluxo difícil de compreender.
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
break encerra o laço imediatamente. continue pula o restante da iteração atual e volta para a próxima. Eles são úteis, mas precisam deixar o fluxo mais claro, não mais misterioso. Antes de usá-los, entenda qual é a regra de término e qual é a regra de descarte.
Uma imagem mental para entender
Imagine procurar uma chave em uma caixa. Quando encontra a chave, pode parar de procurar: isso é parecido com break. Agora imagine conferir cartões e ignorar cartões rasgados, passando ao próximo: isso lembra continue.
Conceitos essenciais, sem pular etapas
break
Sai do laço mais próximo. O programa continua na primeira linha depois desse laço.
continue
Interrompe apenas a iteração atual e retorna ao próximo ciclo do laço.
Busca
break combina bem com situações em que encontrar uma resposta torna o restante da busca desnecessário.
Filtragem simples
continue pode eliminar cedo casos que não devem ser processados, mas um if positivo muitas vezes é igualmente claro.
Fluxo legível
Muitos break/continue espalhados podem dificultar a compreensão de onde o laço realmente termina ou quais linhas foram puladas.
Modelo mental
ITERAR → CASO DE PARADA? break | CASO A IGNORAR? continue | SENÃO PROCESSAR
Exemplo 1 — primeiro veja o programa inteiro
nomes = ["Ana", "Bruno", "Carla", "Diego"]
procurado = "Carla"
for nome in nomes:
print("Verificando:", nome)
if nome == procurado:
print("Encontrado!")
break
Agora vamos ler linha por linha
- O laço começa em Ana e Bruno.
- Quando
nome == procuradose torna verdadeiro para Carla, o bloco executa. breakencerra o laço; Diego não é verificado.- O ganho não é apenas desempenho: o código comunica “não preciso continuar depois de encontrar”.
Saída esperada
Verificando: Ana
Verificando: Bruno
Verificando: Carla
Encontrado!
Exemplo 2 — o mesmo conceito em outra situação
valores = [3, -1, 5, -2, 7]
for valor in valores:
if valor < 0:
continue
print("Processando:", valor)
Valores negativos são descartados antes da linha principal de processamento. A saída mostra apenas 3, 5 e 7.
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.
- Remova o
breakdo primeiro exemplo e compare a quantidade de verificações. - No segundo exemplo, substitua
continuepor umif valor >= 0e compare legibilidade. - Escreva uma frase explicando a condição de parada antes de usar
break. - Evite usar esses comandos apenas porque “parecem avançados”. Use quando a intenção fica mais clara.
Mini desafio
Percorra números de 1 a 10 e pare assim que encontrar o primeiro múltiplo de 7.
Solução comentada
for numero in range(1, 11):
if numero % 7 == 0:
print("Primeiro múltiplo de 7:", numero)
break
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
- Colocar
breakcedo demais e interromper antes de processar o caso encontrado. - Usar
continuee esquecer que linhas abaixo dele não executam naquela iteração. - Criar vários pontos de saída dentro de um laço simples e dificultar o rastreamento.
- Achar que
breakencerra o programa inteiro; ele encerra o laço mais próximo.
Cheque se você realmente entendeu
O que break encerra?
Resposta: O laço mais próximo em que ele está.
O que continue faz?
Resposta: Pula o restante da iteração atual e segue para a próxima.
Quando break é natural?
Resposta: Quando uma busca encontrou o resultado e não há motivo para continuar percorrendo.
Resumo em linguagem simples
Nesta aula, o ponto central foi break, continue e desenho de laços. Tente explicar o modelo ITERAR → CASO DE PARADA? break | CASO A IGNORAR? continue | SENÃO PROCESSAR 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, Por que criar funções, 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.