Olá, Armando. Como vai?
Parabéns pela resolução do exercício! O seu código é um excelente exemplo de como utilizar a função range() de forma avançada para criar iterações decrescentes e como aplicar condicionais para mudar o comportamento do programa a cada volta do laço.
A sua lógica utilizando a estrutura range(10, 0, -1) foi perfeita. Vamos destacar os três argumentos que você passou para essa função, que são essenciais para entender por que ela funcionou tão bem:
10 (Início): O ponto de partida da contagem regressiva.0 (Fim): O ponto de parada. Lembrando que o Python não inclui o número final, ou seja, ele vai parar de contar no número 1.-1 (Passo): O segredo para fazer a contagem andar para trás. Indica que a cada iteração o Python deve subtrair 1 do número atual.
Além disso, a checagem de números pares com if numero % 2 == 0: para alternar as mensagens de marketing de urgência e contagem comum ficou muito criativa e dinâmica!
Apenas como um detalhe de organização do código (provavelmente por conta da formatação ao colar no fórum), atente-se sempre para manter a indentação correta. No Python, a linha final print("Aproveite a promoção agora!") precisa estar totalmente alinhada à esquerda (fora do laço for) para que ela seja executada apenas uma vez no final de toda a contagem. Caso contrário, se ela ficar com espaços no começo, ela será exibida em todas as rodadas.
O seu código com a indentação certinha fica assim:
for numero in range(10, 0, -1):
if numero % 2 == 0:
print(f"Faltam apenas {numero} segundos - Não perca essa oportunidade!")
else:
print(f"A contagem continua: {numero} segundos restantes.")
print("Aproveite a promoção agora!")
- Desafio prático: Criando uma contagem real com
time.sleep
Para tornar essa sua automação de contagem de segundos ainda mais realista e idêntica aos relógios reais, você pode importar um módulo nativo do Python chamado time e usar a função time.sleep(1). Esse comando faz o programa pausar a execução por exatamente 1 segundo antes de ir para o próximo número.
Veja como fica divertido testar no terminal:
import time
for numero in range(10, 0, -1):
if numero % 2 == 0:
print(f"Faltam apenas {numero} segundos - Não perca essa oportunidade!")
else:
print(f"A contagem continua: {numero} segundos restantes.")
time.sleep(1) # Pausa o código por 1 segundo a cada volta
print("Aproveite a promoção agora!")
Parabéns pelo domínio dos loops decrescentes e pela estrutura do seu código! Continue compartilhando suas práticas por aqui.
Espero que possa ter lhe ajudado!