1
resposta

Meu código não deu certo :(

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

    var numeroTentativas = 3;
    var tentativaAtual = 1;

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

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

    while(tentativaAtual <= numeroTentativas){
        if( loginCadastrado == loginInformado && senhaCadastrada == senhaInformada ); 

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

        tentativaAtual = numeroTentativas

    }   else {
            if (tentativaAtual == 3){
                alert("Sistema bloqueado! Número de tentativas máximo alcançado.");
             }   
             else{
                mostra("Login inválido.");
            }

    }
    tentativaAtual = tentativaAtual + 1
</script>
1 resposta

1) Depois do if coloque a { } 2) O "tentativaAtual = tentativaAtual + 1" está fora do while... então fica lá dentro infinitamente...

Tente: while(tentativaAtual <= numeroTentativas){ if( loginCadastrado == loginInformado && senhaCadastrada == senhaInformada ); {

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

    tentativaAtual = numeroTentativas

}   else {
        if (tentativaAtual == 3){
            alert("Sistema bloqueado! Número de tentativas máximo alcançado.");
         }   
         else{
            mostra("Login inválido.");
        }
 tentativaAtual = tentativaAtual + 1
}