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

Não retorna o alert de vitória quando vc acerta na segunda ou terceira tentativa

fala pessoal! estava eu aqui tentando melhorar o jogo da adivinhação implementando dicas pro usuário, que consiste em: se vc chuta um número menor do que o gerado pelo programa, ele te aconselha a chutar um número maior e vice e versa. porém, se vc acerta de segunda ou de terceira vez, ele n exibe o alert de vitória (mas ao acertar de primeira ele funciona). Segue o código:

    var numeroSorteado = Math.round(Math.random() * 10);
    console.log(numeroSorteado)
    var chuteUsuario = Number(prompt('chute um número entre 0 e 10'));
    var chancesUsuario = 3;

    if(numeroSorteado == chuteUsuario) {
        alert('parabéns, você acertou :D')

    } else  {
        while(chancesUsuario > 1 && numeroSorteado != chuteUsuario) {
        chancesUsuario = chancesUsuario - 1

            if (chuteUsuario < numeroSorteado) {
                chuteUsuario = Number(prompt(`
                você errou :(
                mas não se preocupe, você ainda tem ${chancesUsuario} chance(s) :D
                dica: tente um número maior!`));
            } else if(chuteUsuario > numeroSorteado) {
                chuteUsuario =  Number(prompt(`
                você errou :(
                mas não se preocupe, você ainda tem ${chancesUsuario} chance(s) :D
                dica: tente um número menor`))
            } else {
                const avisoUsuario = alert(`
                você digitou um número invalido :/
                digite um número válido dessa vez
                não se preocupe, você n perdeu as chances`);

                chancesUsuario =  chancesUsuario + 1;

                chuteUsuario= prompt(`tente de novo. você tem ${chancesUsuario} chance(s). `)
            }
         }
    }
1 resposta
solução!

Você está dando o alert no if, mas as verificações estão no else. Recomendo que faça uso de funções function, no curso o professor explica mais sobre elas.