Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Solução diferente

<meta charset="UTF-8">
<script type="text/javascript">
    function pulaLinha(){
        document.write("<br>");
    }

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

    var loginCadastrado = "alura";
    var senhaCadastrada = "alura123";
    var loginInformado;
    var senhaInformada;

    function acesso(){
        loginInformado = prompt("Informe o usuário para login!");
        senhaInformada = prompt("Informe a senha!");
    }

    acesso();
    var contador = 0;
    var usuarioAutenticado = false;

    while(!usuarioAutenticado){
        if(contador >= 3){
            mostra("Seu acesso foi bloqueado!");
            usuarioAutenticado = true;
        }else{
            if(loginInformado == loginCadastrado && senhaInformada == senhaCadastrada){
                mostra("Bem-vindo!");
                usuarioAutenticado = true;
            }else{
                contador++;
                alert("Essa é a sua tentiva número: " + contador + ".Lembrando que você possui três tentivas.");
                acesso();
            }
        }
    }

</script>

Ficou bom?

1 resposta
solução!

Boa noite, Mariana! Como vai?

Ficou bom sim! Principalmente a sua ideia de criar uma função acesso() para colocar a parte de pedir o login e a senha do usuário!

A única coisa que eu mudaria seria esse if:

if(contador >= 3){
     mostra("Seu acesso foi bloqueado!");
     usuarioAutenticado = true;
}

Repare que vc dá o valor true à variável usuarioAutenticado, como se o usuário tivesse tido sucesso em se autenticar, o que não é verdade. O ideal seria utilizar uma segunda variável chamada usuarioBloqueado para indicar que o usuário ficou bloqueado.

Grande abraço e bons estudos!