1
resposta

[Projeto] Validação de entrada para login

Texto:
Este programa valida o cadastro de um usuário usando um laço while. Ele continua pedindo o nome de usuário e a senha até que o nome tenha pelo menos 5 caracteres e a senha tenha pelo menos 8 caracteres.

Resposta:

usuario_valido = False

while usuario_valido == False:

usuario = input("Digite seu nome de usuário: ")

senha = input("Digite sua senha: ")

if len(usuario) < 5:

print("O nome de usuário deve ter pelo menos 5 caracteres.")

elif len(senha) < 8:

print("A senha deve ter pelo menos 8 caracteres.")

else:

print("Cadastro realizado com sucesso!")

usuario_valido = True
1 resposta

Olá, Filipe. Como vai?

Excelente trabalho! Esse projeto de validação de login é uma aplicação prática fundamental, pois demonstra como garantir a integridade e a segurança dos dados logo na entrada do sistema.

Sua solução utiliza muito bem a lógica de controle de estado. Vamos analisar os pontos técnicos de destaque:

1. Controle de Estado com Flags

O uso da variável usuario_valido = False (conhecida como flag) é a maneira correta de gerenciar laços que dependem de múltiplas condições de sucesso. O programa só "abre a porteira" quando todas as suas regras de negócio são satisfeitas no bloco else.

2. Validação de Comprimento com len()

Você aplicou a função len() de forma precisa para medir o tamanho das strings. Essa é a base para criar regras de complexidade de senhas e nomes de usuário em sistemas reais.

3. Hierarquia das Mensagens de Erro

Ao utilizar o if e o elif, você criou uma hierarquia de validação. O programa primeiro checa o usuário e, só se ele estiver correto, passa a validar a senha. Isso ajuda o usuário a corrigir um erro por vez, melhorando a experiência de uso.


Dica de Python:
Assim como no projeto anterior, notei que o texto "Copiar código" acabou ficando dentro do seu script. Lembre-se de limpá-lo para que o interpretador não aponte erros.

Para deixar o código ainda mais direto, você pode escrever o while de forma mais simples:

while not usuario_valido:
    # seu código aqui

Em Python, while not False é equivalente a while False == False, mas é lido de forma mais natural, quase como uma frase em inglês.

Com este projeto, você consolidou como prender o fluxo do programa até que o usuário forneça exatamente o que o sistema espera. Continue com essa dedicação!

Espero que possa ter lhe ajudado!