Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Fiz dessa forma, porém ao invés de 3 tentativas meu código está executando 4 tentantivas

Gostaria de uma solução para o meu código, pois já tentei bastante e não consegui fazer com que ele execute apenas 3 tentativas. Desde já agradeço!

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

    function mostra(frase) {
        document.write(frase);
    }

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

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

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

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

    } else {

        var tentativas = 1

        while(tentativas <= 3) {

            if(loginInformado != loginCadastrado && senhaInformada != senhaCadastrada) {
                alert("Login incorreto. Tente novamente!");
                var loginInformado = prompt("Informe seu login");
                var senhaInformada = prompt("Informe sua senha");

            }
            tentativas = tentativas + 1
        }

        alert("Tentativas esgotadas!");
        alert("FIM")
    }
</script>
2 respostas

Fala Caio,

Basta mudar sua condição:

while(tentativas <= 3)

para:

while(tentativas < 3)

Isso acontece porque você incrementa no final e na quarta tentativa a variável está com 3 quando passa pela condição.

Abraço

solução!

como vc colocou tentativas = tentativas + 1, vai somar o <=3 mais uma tentativa, vc pode colocar <=2 ou mudar para < 3