Com while:
contador = 0
while contador < 5:
print("Bem-vindo ao Buscante!")
contador += 1
Com for:
for _ in range(5):
print("Bem-vindo ao Buscante!")
Com while:
contador = 0
while contador < 5:
print("Bem-vindo ao Buscante!")
contador += 1
Com for:
for _ in range(5):
print("Bem-vindo ao Buscante!")
Olá, Maria. Como vai?
Parabéns pelas resoluções! Ambos os códigos estão absolutamente corretos e alcançam exatamente o mesmo objetivo: exibir a mensagem "Bem-vindo ao Buscante!" exatamente 5 vezes.
O mais bacana de ver as duas soluções juntas é notar como você compreendeu a transição de uma lógica para a outra. Você usou o recurso perfeito para cada cenário:
while: Criou o controle manual usando a variável contador, testando a condição e lembrando de atualizá-la com contador += 1 para evitar o loop infinito.for: Utilizou a função range(5), que automatiza todo esse processo para nós, criando um intervalo que vai de 0 a 4 (totalizando 5 iterações).forUm detalhe técnico que demonstra que você está estudando com muita atenção foi o uso do caractere sublinhado (_) na linha do laço:
for _ in range(5):
No Python, o uso do _ é uma convenção de mercado muito forte e elegante. Ele serve para avisar a outras pessoas desenvolvedoras (e ao próprio interpretador da linguagem) que aquela variável do laço é obrigatória por questões de sintaxe, mas que não será utilizada dentro do bloco de código.
Se você tivesse escrito for i in range(5):, o código funcionaria igual, mas o uso do _ deixa explícito que você só se importa com a quantidade de repetições, e não com o número da iteração atual.
Para entender visualmente como o Python lida com essas repetições de forma controlada, podemos pensar no fluxo de execução de um laço com contador:
Nos dois casos que você programou, o interpretador faz exatamente essa checagem de 5 ciclos antes de encerrar o script. Suas soluções mostram que você capturou perfeitamente os fundamentos das estruturas de repetição!
Espero que possa ter lhe ajudado!