1
resposta

Simulando uma tela de login - quase não consegui, mas deu certo no final

Olá pessoal.

Eu tive um pouco de dificuldade neste exercício mas no final ele deu certo.

O problema que eu estava tendo era que quando o usuário estivesse na última tentativa, mesmo se acertasse o login e senha, o programa retornava a mensagem de "Acabaram as tentativas".

A solução que encontrei foi adicionar um segundo if apenas para testar se o número de tentativas já haviam se esgotado.

Não sei se essa minha solução ficou a mais "otimizada", mas o que importa é que funcionou.

O que acham?

<meta charset="UTF-8">
<script>

    var loginCadastrado = "alura";
    var senhaCadastrada = "alura321";

    var loginInformado = prompt("Informe seu login");
    var senhaInformada = prompt("Informe sua senha");
    var tentativas = 2; // número de tentativas é 2 pois a primeira tentativa já foi gasta logo acima (nos primeiros prompts)

    while(tentativas >= 0){

        if(loginCadastrado == loginInformado && senhaCadastrada == senhaInformada) {

            alert("Bem-vindo ao sistema " + loginInformado);
            break;

        } else {
            if(tentativas == 0){ // este if é apenas para testar se as tentativas acabaram e finalizar o programa
                alert("Você esgotou as tentativas.");
                break;
            } else {
                alert("Login inválido. Você  tem mais " + tentativas + " tentativas.");
                loginInformado = prompt("Informe seu login");
                senhaInformada = prompt("Informe sua senha");
                tentativas = tentativas - 1;
            }
        }
    }

    alert("FIM");
    </script>
1 resposta

Bacana, hein Fernando!

É isso aí!

Convido a dar uma olha nessa discussão em nosso fórum que pode te dar outras ideias também!

O caminho é esse ;-)

Obrigado por compartilhar conosco e contribuir para nossa comunidade!

Um abraço e bons estudos!!!