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

[Projeto] Contagem Regressiva

Contagem Regressiva

Solução do exercício proposto pela Alura

Nesta atividade, o objetivo é utilizar um laço for para realizar uma contagem regressiva de 10 até 1. Além disso, o programa deve exibir mensagens diferentes para números pares e ímpares.

Código proposto pela Alura:

for segundos in range(10, 0, -1):

    if segundos % 2 == 0:
        print(
            f"Faltam apenas {segundos} segundos - "
            "Não perca essa oportunidade!"
        )

    else:
        print(
            f"A contagem continua: "
            f"{segundos} segundos restantes."
        )

print("Aproveite a promoção agora!")

Saída esperada:

Faltam apenas 10 segundos - Não perca essa oportunidade!
A contagem continua: 9 segundos restantes.
Faltam apenas 8 segundos - Não perca essa oportunidade!
A contagem continua: 7 segundos restantes.
Faltam apenas 6 segundos - Não perca essa oportunidade!
A contagem continua: 5 segundos restantes.
Faltam apenas 4 segundos - Não perca essa oportunidade!
A contagem continua: 3 segundos restantes.
Faltam apenas 2 segundos - Não perca essa oportunidade!
A contagem continua: 1 segundos restantes.
Aproveite a promoção agora!

Aprendi que:

  • range(10, 0, -1) gera uma sequência decrescente de números;
  • o operador % permite identificar números pares e ímpares;
  • a estrutura if/else permite executar ações diferentes conforme uma condição.

Fazendo uma analogia com a gestão pedagógica

Podemos utilizar uma lógica semelhante para acompanhar um estudante que está em monitoramento por conversa excessiva.

Nesse caso, não estamos diminuindo a quantidade de registros já existentes, pois os registros permanecem no histórico do estudante. O que observamos é se continuam surgindo novas ocorrências ao longo do tempo.

aluno = "Anik"

novos_registros = [1, 1, 1, 0, 0]

for semana, registro in enumerate(novos_registros, start=1):

    if registro > 0:

        print(
            f"Semana {semana}: "
            f"novo registro identificado. "
            f"{aluno} permanece em acompanhamento."
        )

    else:

        print(
            f"Semana {semana}: "
            "nenhum novo registro identificado."
        )

print(
    f"{aluno}: situação superada após período sem novas ocorrências."
)

Saída:

Semana 1: novo registro identificado. Anik permanece em acompanhamento.
Semana 2: novo registro identificado. Anik permanece em acompanhamento.
Semana 3: novo registro identificado. Anik permanece em acompanhamento.
Semana 4: nenhum novo registro identificado.
Semana 5: nenhum novo registro identificado.
Anik: situação superada após período sem novas ocorrências.

Essa analogia representa melhor a realidade escolar, pois o foco não está em apagar ou reduzir registros anteriores, mas em verificar se o comportamento continua ocorrendo após as intervenções realizadas.

O que aprendi com a atividade

Aprendi que o laço for pode ser utilizado para controlar sequências e acompanhar eventos ao longo do tempo.

Também compreendi que a combinação de repetição (for) e tomada de decisão (if/else) permite criar programas capazes de monitorar situações, identificar padrões e gerar mensagens diferentes conforme os resultados observados.

Essa atividade mostrou que a programação pode ser utilizada para acompanhar processos evolutivos, nos quais o mais importante não é apenas o resultado final, mas a análise do percurso realizado.

1 resposta

Oi, Patricia. Tudo bem com você?

O código está correto e atende aos requisitos propostos no exercício. A utilização de range(10, 0, -1) para gerar a sequência decrescente, combinada com a verificação de números pares e ímpares utilizando o operador %, demonstra um bom entendimento do uso de laços for e estruturas condicionais em Python.

Sua explicação dos conceitos envolvidos foi clara e os exemplos complementares mantiveram a lógica trabalhada na atividade. A analogia com o acompanhamento de registros em um contexto pedagógico também é válida, pois mostra como estruturas de repetição podem ser utilizadas para analisar eventos que ocorrem ao longo do tempo e gerar respostas diferentes de acordo com determinadas condições.

Como exemplo dentro do contexto do exercício, a mesma abordagem poderia ser utilizada em sistemas de notificações, promoções temporárias ou monitoramento de etapas de um processo, onde diferentes mensagens são exibidas conforme o estado atual da execução. Além disso, o uso de enumerate() no exemplo complementar demonstra que você já está explorando recursos importantes da linguagem para trabalhar com índices e valores simultaneamente.

Ao observar os conceitos utilizados nessa atividade, quais outras situações do seu dia a dia poderiam ser representadas por uma sequência controlada por um laço for e decisões com if/else?

Parabéns pela resolução e pela reflexão apresentada. 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!