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

[Dúvida] Quiz 2

Boa dia! Com base em instruções, fiz um novo quiz. Porém no console.log dá erro na linha 84. Pode me ajudar?

<meta charset="UTF-8">

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

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

   var facil = "fácil";
   var medio = "média";
   var dificil = "difícil";
   var dificuldade; 
   var tentativas;
   var barcelona = "16";
   var champions = "6";
   var golsHaaland = "12";


   do{
       var dificuldade = prompt("Selecione o nível de dificuldade: fácil, média ou difícil");
       var tentativas = 1;

       if (dificuldade == facil){
           while(tentativas<=2){
               qtdChampions = prompt("Quantas Champions o Bayern de Munique têm?")
               if (qtdChampions == champions){
                   alert("Parabéns, você acertou")
                   mostra("Parabéns, você acertou! O Bayern de Munique têm 6 Champions!")
                   break;
               } else{
                   var diferenca = Math.abs(qtdChampions - champions)
                   if (diferenca <=1){
                       alert("Você errou mas esta próximo. Tente novamente!")
                        } else {
                           alert("Você errou e está longe da resposta, tente novamente");
                       }
                    tentativas++;
                   }
               }

           } else if (dificuldade = medio){
               while(tentativas<=4){
                   qtdGols = prompt("Quantos gols o Haaland fez na Champions 2022/2023?")
                   if(qtdGols == golsHaaland){
                       alert("Parabéns, você acertou!");
                       mostra("Parabéns, você acertou!");
                       break;
                   } else {
                       var diferenca = Math.abs (qtdGols - golsHaaland)
                       if (diferenca <=2){
                           alert("Você errou, mas está próximo. Tente novamente!");
                       } else {
                           alert("Você errou e está distante, tente novamente!");
                       }
                       tentativas++;
                   }
               }
           }

           
            else if (dificuldade = dificl){
               while(tentativas<=6){
                   qtdGolsBarcelona = prompt("Quantos gols o Barcelona fez no mata-mata em seu último título de Champions?")
                   if(qtdGolsBarcelona == barcelona){
                       alert("Parabéns, você acertou!");
                       mostra("Parabéns, você acertou!");
                       break;
                   } else {
                       var diferenca = Math.abs(qtdGolsBarcelona - barcelona)
                       if (diferenca <=3){
                           alert("Você errou, mas está próximo. Tente novamente!")
                       } else {
                           alert("Você errou e está distante. Tente novamente!");
                       }
                       tentativas++;
                   }
               }
           }
       } while (nivelDeDificuldade != 'sair');
</script>
1 resposta
solução!

Bom dia!

Na linha 25 você declara a variável assim:

var dificuldade = prompt("Selecione o nível de dificuldade: fácil, média ou difícil");

Na linha 84 você usa uma variável que não existe:

} while (nivelDeDificuldade != 'sair');

A variável correta para uso seria : dificuldade, ficando dessa forma:

<meta charset="UTF-8">

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

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

   var facil = "fácil";
   var medio = "média";
   var dificil = "difícil";
   var dificuldade; 
   var tentativas;
   var barcelona = "16";
   var champions = "6";
   var golsHaaland = "12";


   do{
       var dificuldade = prompt("Selecione o nível de dificuldade: fácil, média ou difícil");
       var tentativas = 1;

       if (dificuldade == facil){
           while(tentativas<=2){
               qtdChampions = prompt("Quantas Champions o Bayern de Munique têm?")
               if (qtdChampions == champions){
                   alert("Parabéns, você acertou")
                   mostra("Parabéns, você acertou! O Bayern de Munique têm 6 Champions!")
                   break;
               } else{
                   var diferenca = Math.abs(qtdChampions - champions)
                   if (diferenca <=1){
                       alert("Você errou mas esta próximo. Tente novamente!")
                        } else {
                           alert("Você errou e está longe da resposta, tente novamente");
                       }
                    tentativas++;
                   }
               }

           } else if (dificuldade = medio){
               while(tentativas<=4){
                   qtdGols = prompt("Quantos gols o Haaland fez na Champions 2022/2023?")
                   if(qtdGols == golsHaaland){
                       alert("Parabéns, você acertou!");
                       mostra("Parabéns, você acertou!");
                       break;
                   } else {
                       var diferenca = Math.abs (qtdGols - golsHaaland)
                       if (diferenca <=2){
                           alert("Você errou, mas está próximo. Tente novamente!");
                       } else {
                           alert("Você errou e está distante, tente novamente!");
                       }
                       tentativas++;
                   }
               }
           }

           
            else if (dificuldade = dificl){
               while(tentativas<=6){
                   qtdGolsBarcelona = prompt("Quantos gols o Barcelona fez no mata-mata em seu último título de Champions?")
                   if(qtdGolsBarcelona == barcelona){
                       alert("Parabéns, você acertou!");
                       mostra("Parabéns, você acertou!");
                       break;
                   } else {
                       var diferenca = Math.abs(qtdGolsBarcelona - barcelona)
                       if (diferenca <=3){
                           alert("Você errou, mas está próximo. Tente novamente!")
                       } else {
                           alert("Você errou e está distante. Tente novamente!");
                       }
                       tentativas++;
                   }
               }
           }
       } while (nivelDeDificuldade != 'sair');
</script>

Espero ter ajudado. Se sua dúvida foi sanada, marque este tópico como solucionado.

Bons estudos!