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

DUVIDA NA APLICAÇÃO DO WHILE + IF

Ainda estou perdida em como fazer o uso das duas. Vi que na sugestão do professor ele coloca as variáveis dentro do While, porquê? Quando eu faço isso? Não consegui fazer o meu rodar.

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

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

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

    while (contador <= 3) {

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

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

        } else 

            alert ("Login inválido. Tente novamente");
            contador = contador + 1 ;

            }        

</script>
4 respostas

ola, voce tem que deixar a var login informado e senha informada dentro do while, para que o lastro repita a pergunta

Olá Amanda,

Você precisa deixar o loginInformado e a senhaInformada dentro do while para que ele possa chamar a variável e o prompt, numa das aulas passadas o professor reforçou essa info com uma pegadinha. Também no seu ELSE está faltando uma das chaves. E o seu número 3 que é o máximo de tentativas está sem uma variável para chamar ele.

Segue seu código corrigido:

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

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

    var contadorMaximo = 3;
    var contador = 1;

    while (contador <= contadorMaximo) {

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

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

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

            contador = contadorMaximo; // correto então gasta todas as tentativas restantes automaticamente e sai do loop.

        } else {

            if (contador == contadorMaximo) {

            alert("Número permitido de tentativas ultrapassado!");

        } else {

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

            // vai para a próxima tentativa
            contador = contador + 1;
            // "contador++" também pode ser usado, que é um atalho para melhorar/incrementar uma variável.
    }       

</script>

Espero ter ajudado!! :)

solução!

Esse artigo aqui também me ajudou nas dúvidas.

https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Reference/Statements/while

Obrigada! :)