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

Meu código está caindo em Loop infinito e não emite a informação do Alert. Qual é o meu erro ?

1 resposta
solução!

Boa tarde, Jonathan! Como vai?

O problema é que o seu if que verifica o login e incrementa a variável tentativaAtual ficou fora do while. Dessa forma a variável tentativaAtual nunca é incrementada e o seu laço de repetição entra em loop infinito! O correto seria fazer:

var maximoTentativas = 3;
var tentativaAtual = 1;

while(tentativaAtual <= maximoTentativas) {

     var loginInformado = prompt("Informe seu login");

     var senhaInformada = prompt("Informe sua senha");

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


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

          tentativaAtual=maximoTentativas;

     } else {

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

          tentativaAtual=tentativaAtual ++

     }
}

Obs.: Faltou um ponto e vírgula no final da linha tentativaAtual = tentativaAtual++!

Desafio: No seu código, mesmo que o usuário acerte o login haverá um comportamento estranho! Vc consegue identificar que comportamento é esse e resolver ele?

Aprendizado para a vida: Sempre que for postar um código aqui no fórum, utilize o botão "inserir código" e cole o código no lugar indicado para que ele saia com a formatação correta e facilite na hora de analisar e te ajudar!

Grande abraço e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software