contador = 0
while contador < 5:
print(f"Bem-vindo ao Buscante!")
contador += 1
contador = 0
while contador < 5:
print(f"Bem-vindo ao Buscante!")
contador += 1
Oi, Eduardo.
Essa é uma excelente questão para entender o comportamento do laço while. Diferente do for, que geralmente percorre uma lista ou intervalo definido, o while depende exclusivamente de uma condição ser verdadeira para continuar executando.
No seu código, a mensagem será exibida 5 vezes.
O segredo está em acompanhar o valor da variável contador em cada ciclo (ou iteração):
contador começa em 0. Como 0 é menor que 5, o Python entra no laço, imprime a mensagem e soma 1. Agora o contador vale 1.contador vale 2.contador vale 3.contador vale 4.contador vale 5.Após a quinta impressão, o Python volta ao topo e testa: 5 é menor que 5? A resposta é falsa. Por isso, o laço encerra e o programa segue para as linhas debaixo.
A linha contador += 1 é fundamental. Sem ela, o contador permaneceria eternamente em 0, a condição 0 < 5 seria sempre verdadeira e teríamos o que chamamos de loop infinito.
Se você quisesse que o usuário visse o número de cada mensagem, bastaria adicionar a variável no texto:
contador = 0
while contador < 5:
# Somamos 1 apenas na exibição para o usuário ver de 1 a 5
print(f"{contador + 1}ª vez: Bem-vindo ao Buscante!")
contador += 1
O uso do while é muito comum quando não sabemos de antemão quantas vezes algo vai acontecer, como esperar o usuário digitar uma senha correta ou carregar dados de um site.
Como você faria se precisasse que essa mensagem aparecesse apenas 3 vezes em vez de 5?