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

[Dúvida] Função mostra ou alert

Na linha ... alert("Bem vindo ao sistema de programação " + loginInformado "."); ...

Eu estava utilizando a função mostra("Bem vindo ao sistema de programação" + loginInformado + "."); porém ele ficava repetindo os comandos de prompt de login e senha em looping, mas ao alterar para alert funcionou normalmente. Porque?

<meta charset="UTF-8">

<script>

    function pulaLinha(){
        document.write("<br>")

    }

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

    }

    var loginLuca = "lucamdco19";
    var senhaLogin = "luca123";

    var maximoTentativas = 3
    var tentativaAtual = 1

    while (tentativaAtual <= maximoTentativas) {

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

        if(loginInformado == loginLuca && senhaInformada == senhaLogin) {

        alert("Bem vindo ao sistema de programação " + loginInformado + ".");

        tentativaAtual = maximoTentativas;

    } else {
        if(tentativaAtual == 3){
            alert("número de tentativas ultrapassadas");
        } else {
            alert("login invalido. tente novamente")
        }
            tentativaAtual = tentativaAtual + 1;
        }

    }

</script>
3 respostas
solução!

O problema está na linha 31:

 tentativaAtual = maximoTentativas;

faltou somar +1, pois caso contrário, o while irá entrar em loop infinito.

Tente alterar para:

 tentativaAtual = maximoTentativas + 1;

Obrigado, pela ajuda. Erro besta meu!

Não sei se eu entendi errado, mas me parece que o seu erro, Luca Mazzucchelli Dias Cerveira de Oliveira, na verdade eu acho que está na linha 39, porque na linha 39 você colocou o código (tentativaAtual = tentativaAtual + 1), e na verdade você deveria colocar esse código na linha 41, ou seja, antes do fechamento do último colchetes, do jeito que está o seu código quando você entra com o login e a senha correta o sistema ainda gera mais uma tentativa, e isso tá acontecendo porque o (tentativaAtual = tentativaAtual + 1) está ficando dentro do primeiro else e com isso quando se insere a senha e o login correto o sistema não chega computar o acrescimo na variável tentativaAtual. O código (tentativaAtual = tentativaAtual + 1) localizado na linha 41, antes do ultimo colchetes serve para fazer o incremento da variável (tentativaAtual) nos dois "if's" e no último else.