Advertisement
campos20

Jogo de Adivinhação v6

Sep 14th, 2020
1,228
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. // Jogo de adivinhacao
  2. // Autor: Alexandre Campos
  3.  
  4. let maximo = 50;
  5.  
  6. // Geracao do numero a ser adivinhado aleatoriamente
  7. let numeroCorreto = Math.floor(Math.random() * maximo) + 1;
  8.  
  9. console.log(numeroCorreto);
  10.  
  11. let ultimoPalpiteFoiMaior = false;
  12. let ultimoPalpiteFoiMenor = false;
  13.  
  14. let primeiraTentativa = true;
  15.  
  16. // Lista vazia dos numeros ja tentados
  17. let numerosJaTentados = [];
  18.  
  19. // While true uma acao para sempre
  20. while (true) {
  21.     let mensagem = "";
  22.  
  23.     // \n e quebra de linha visual na tela
  24.     // Mostra mensagem de ajuda somente na primeira
  25.     if (primeiraTentativa){
  26.         mensagem += "Eu pensei em um número entre 1 e " + maximo +". Você consegue adivinhar qual numero é esse?\n\n";
  27.    
  28.     }
  29.    
  30.     if (ultimoPalpiteFoiMaior) {
  31.         mensagem += "Tente um número menor.\n";
  32.     }
  33.    
  34.     if (ultimoPalpiteFoiMenor) {
  35.         mensagem += "Tente um número maior.\n";
  36.     }
  37.    
  38.     // Exibe os numeros ja tentados
  39.     mensagem += "Números já tentados: " + numerosJaTentados + "\n";
  40.    
  41.     // Para nao influenciar o prosseguimento do jogo, zeramos os valores
  42.     ultimoPalpiteFoiMaior = false;
  43.     ultimoPalpiteFoiMenor = false;
  44.    
  45.     // Concatena mais texto a mensagem
  46.     mensagem += "Digite um palpite ou digite 'sair' para encerrar";
  47.  
  48.     // Quando utilizamos o prompt, a entrada e lida como texto
  49.     let palpite = prompt(mensagem);
  50.    
  51.     // Se a pessoa digitar o numero correto, encerra o jogo
  52.     if (palpite == numeroCorreto){
  53.         // Exibe mensagem de encerramento
  54.         alert("Parabéns, você venceu!!!");
  55.        
  56.         // Break interrompe o loop atual
  57.         break;
  58.     } else if (palpite == "sair"){
  59.         // Usuario optou por sair.
  60.         alert("Você encerrou o jogo.");
  61.         break;
  62.     } else if (palpite == null) {
  63.         // Nenhuma entrada foi detectada
  64.         alert("Palpite não identificado. Encerrando.");
  65.         break;
  66.     } else if (Number(palpite) < numeroCorreto) {
  67.         // Pessoa digitou um numero pequeno
  68.         ultimoPalpiteFoiMenor = true;
  69.     } else if (Number(palpite) > numeroCorreto) {
  70.         // Pessoa digitou um numero grande
  71.         ultimoPalpiteFoiMaior = true;
  72.     }
  73.    
  74.     primeiraTentativa = false;
  75.    
  76.     // "Push" adiciona valores em uma lista
  77.     numerosJaTentados.push(palpite);
  78.    
  79. }
  80.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement