2
respostas

Consegui fazer, porém quando digito uma das informações certo não acontece nada.

<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 = 1;


    while(loginInformado != loginCadastrado && senhaInformada != senhaCadastrada) {

        tentativas = tentativas + 1;

        alert("Login inválido. Tente novamente");

        var loginInformado = prompt("Informe seu login");
        var senhaInformada = prompt("Informe sua senha");

        if(tentativas >= 3) {

            alert("Login Bloqueado, contate seu admnistrador!");

        }


    }

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

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

</script>
2 respostas

No while quando você utiliza o && (e) basta uma das condições serem falsas para ele sair da estrutura de repetição, você deve usar || (ou) que assim ele só sairá da estrutura quando ambos login e senha informadas forem iguais as cadastradas.

Oi Maicon Silva Rossi essa condição no while funciona assim:

loginInformado != loginCadastrado && senhaInformada != senhaCadastrada

Se vc não acertar o login e também não acertar a senha tudo ok ela vai te dar outra chance.Mas se

Você acertar o login e errar a senha ou acertar a senha e errar o login nada irá acontecer pois a condiçaõ do while não será satisfeita.

Espero ter ajudado e bons estudos.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software