Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Utilidade do `continue` em laços

Solução do exercício proposto pela Alura

Nesta atividade, o objetivo é percorrer uma lista de livros e exibir apenas aqueles que possuem exemplares disponíveis em estoque.

Código proposto pela Alura:

livros = [
    {"nome": "1984", "estoque": 5},
    {"nome": "Dom Casmurro", "estoque": 0},
    {"nome": "O Pequeno Príncipe", "estoque": 3},
    {"nome": "O Hobbit", "estoque": 0},
    {"nome": "Orgulho e Preconceito", "estoque": 2}
]

for livro in livros:

    if livro["estoque"] == 0:
        continue

    print(f"Livro disponível: {livro['nome']}")

Saída esperada:

Livro disponível: 1984
Livro disponível: O Pequeno Príncipe
Livro disponível: Orgulho e Preconceito

Nesse exemplo, o comando continue faz com que o programa ignore os livros que estão sem estoque e passe imediatamente para a próxima iteração do laço.


Fazendo uma analogia com a gestão pedagógica

Podemos utilizar a mesma lógica para analisar registros de estudantes.

Imagine que a coordenação queira analisar apenas os alunos que possuem registros de acompanhamento, ignorando aqueles que não apresentam necessidade de intervenção.

alunos = [
    {"nome": "Amanda", "acompanhamento": False},
    {"nome": "Anik", "acompanhamento": True},
    {"nome": "Annabel", "acompanhamento": False},
    {"nome": "Arthur", "acompanhamento": True},
    {"nome": "Caio", "acompanhamento": False}
]

for aluno in alunos:

    if aluno["acompanhamento"] == False:
        continue

    print(f"Aluno em acompanhamento: {aluno['nome']}")

Saída:

Aluno em acompanhamento: Anik
Aluno em acompanhamento: Arthur

Nesse caso, o sistema ignora automaticamente os alunos que não necessitam de acompanhamento e exibe apenas aqueles que demandam atenção da equipe pedagógica.


O que aprendi com a atividade

Aprendi que o comando continue não encerra o laço, como acontece com o break.

Sua função é apenas ignorar a iteração atual e passar para o próximo item da lista.

Assim:

  • break → interrompe completamente o laço;
  • continue → ignora apenas o item atual e continua a execução.

Esse recurso é muito útil quando queremos filtrar informações e trabalhar apenas com os dados que atendem a determinados critérios.

Testei o programa a partir de uma planilha com os dados do AFA. Para apresentar o resultado abaixo, utilizei os dados de nossa planilha de registros da turma Sexto Ano A.

Utilizando os dados dos três primeiros alunos da turma (Amanda, Anik e Annabel), podemos adaptar o exercício para exibir apenas os alunos que estão em acompanhamento por conversa excessiva.

A lógica será:

  • Se o aluno não estiver em acompanhamento, o programa ignora o registro usando continue.
  • Se o aluno estiver em acompanhamento, o programa exibe seu nome.

Código:

alunos = [
    {"nome": "Amanda Vasconcelos Nunes", "acompanhamento": False},
    {"nome": "Anik Azevedo Cordeiro de Carvalho", "acompanhamento": True},
    {"nome": "Annabel Alcântara Oliveira da Silva", "acompanhamento": False}
]

for aluno in alunos:

    if aluno["acompanhamento"] == False:
        continue

    print(f"Aluno em acompanhamento: {aluno['nome']}")

Saída:

Aluno em acompanhamento: Anik Azevedo Cordeiro de Carvalho

Fazendo uma análise pedagógica

A partir dos dados analisados anteriormente:

Amanda Vasconcelos Nunes

  • Não apresenta recorrência de registros negativos.
  • Não atingiu critério para acompanhamento.
  • O programa ignora seu registro utilizando continue.

Anik Azevedo Cordeiro de Carvalho

  • Apresentou recorrência de registros relacionados à conversa excessiva.
  • É o único dos três alunos que demandaria acompanhamento.
  • O programa exibe seu nome.

Annabel Alcântara Oliveira da Silva

  • Apresenta perfil equilibrado.
  • Não possui recorrência de registros comportamentais.
  • O programa ignora seu registro utilizando continue.

O que aprendi com a atividade

Aprendi que o comando continue é muito útil quando queremos filtrar informações.

No exemplo original da Alura, o programa ignorava livros sem estoque.

Nesta adaptação, o programa ignora alunos que não necessitam de acompanhamento e exibe apenas aqueles que atendem ao critério definido.

Dessa forma, o laço continua percorrendo toda a lista, mas trabalha apenas com os dados que são relevantes para a análise.

1 resposta

Oi, Patricia. Tudo bem com você?

O código está correto e atende exatamente ao objetivo da atividade, que é ignorar os livros sem estoque e exibir apenas aqueles que estão disponíveis. O uso do continue foi aplicado de forma adequada, tornando a lógica simples e fácil de compreender.

Sua explicação sobre a diferença entre break e continue também foi muito pertinente. Enquanto o break encerra completamente o laço, o continue apenas ignora a iteração atual e segue analisando os demais elementos. Essa distinção é importante para escolher a melhor estratégia de controle de fluxo em cada situação.

Os exemplos que você trouxe para o contexto educacional seguem a mesma lógica proposta no exercício e demonstram uma aplicação coerente do conceito. Em cenários de análise de dados, filtragem de registros ou processamento de informações, o continue pode ajudar a focar apenas nos dados relevantes. Um exemplo semelhante seria ignorar atividades não entregues e processar apenas aquelas que possuem nota registrada.

Como reflexão, em quais outras situações de filtragem de dados você acredita que o uso do continue poderia deixar o código mais simples e legível?

Parabéns pela resolução e pelas conexões práticas que você apresentou. Obrigado por compartilhar seu aprendizado com a comunidade. O fórum está à disposição para suas próximas contribuições e dúvidas.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!