Oii Cassiano! Tudo bem?
É muito bom ver você testando caminhos diferentes para resolver o mesmo problema.
Para responder diretamente à sua primeira dúvida: a sua mensagem "Bem-vindo ao Buscante!" será exibida exatamente 5 vezes.
O seu código funciona perfeitamente porque segue a lógica correta:
- Começa em
0. - O
while testa se o valor é menor que 5. - Exibe a mensagem e soma
1 na contagem. - Repete o processo até que a
contagem chegue a 5 (momento em que a condição se torna falsa e o laço para).
Quando usar while ou for no dia a dia?
Ambas as estruturas são válidas, mas a escolha entre elas depende da natureza do problema que você está resolvendo. No desenvolvimento de software, costumamos seguir uma regra simples:
1. Usamos o for quando sabemos o limite exato:
Se você sabe de antemão quantas vezes precisa repetir uma ação (como ler uma lista de 10 produtos, processar 12 meses do ano ou, no seu caso, exibir a mensagem 5 vezes), o for é o mais indicado.
Em Python, a solução com for ficaria assim:
for contagem in range(5):
print("Bem-vindo ao Buscante!")
Por que o for costuma ser a solução proposta nesse caso?
- Código limpo: Você não precisa criar a variável
contagem = 0 antes e nem se preocupar em somar contagem += 1 no final. O próprio Python cuida disso. - Segurança: Com o
for, não há risco de esquecer de incrementar a variável e gerar um loop infinito (o que travaria o programa).
2. Usamos o while quando o limite depende de uma condição
O while brilha quando você não tem ideia de quantas vezes o ciclo vai rodar. A repetição continua até que uma condição mude (geralmente baseada em uma ação externa ou do usuário).
Exemplos práticos de while:
- Continuar rodando um jogo até o jogador clicar no botão "Sair" (
while jogo_ativo == True). - Ficar pedindo a senha do usuário até ele digitar a senha correta.
- Aguardar a resposta de um servidor de internet.
O seu código com while está correto e atinge o objetivo esperado. Porém, para este cenário onde o número de repetições é fixo (5 vezes), o for utilizando range(5) é considerado uma prática mais comum na comunidade Python por deixar o código mais enxuto e seguro.
O que achou da solução com for?
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!