break, continue e desenho de laços

Interromper ou pular iterações sem tornar o fluxo difícil de compreender.

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 == procurado se torna verdadeiro para Carla, o bloco executa.
  • break encerra 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.

  1. Remova o break do primeiro exemplo e compare a quantidade de verificações.
  2. No segundo exemplo, substitua continue por um if valor >= 0 e compare legibilidade.
  3. Escreva uma frase explicando a condição de parada antes de usar break.
  4. 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 break cedo demais e interromper antes de processar o caso encontrado.
  • Usar continue e 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 break encerra 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.