Programa JavaScript para adivinhar um número aleatório

Neste exemplo, você aprenderá a escrever um programa JavaScript em que o usuário deve adivinhar um número gerado por um programa.

Para entender este exemplo, você deve ter conhecimento dos seguintes tópicos de programação JavaScript:

  • Função JavaScript e expressões de função
  • JavaScript Math random ()
  • JavaScript while e do … while Loop

Exemplo: programa para adivinhar um número

 // program where the user has to guess a number generated by a program function guessNumber() ( // generating a random integer from 1 to 10 const random = Math.floor(Math.random() * 10) + 1; // take input from the user let number = parseInt(prompt('Guess a number from 1 to 10: ')); // take the input until the guess is correct while(number !== random) ( number = parseInt(prompt('Guess a number from 1 to 10: ')); ) // check if the guess is correct if(number == random) ( console.log('You guessed the correct number.'); ) ) // call the function guessNumber();

Resultado

 Adivinhe um número de 1 a 10: 1 Adivinhe um número de 1 a 10: 8 Adivinhe um número de 1 a 10: 5 Adivinhe um número de 1 a 10: 4 Você adivinhou o número correto.

Nota : Você obterá valores de saída diferentes cada vez que executar o programa, pois cada vez que um número diferente for gerado.

No programa acima, a guessNumber()função é criada onde um número aleatório de 1 a 10 é gerado usando a Math.random()função.

Para saber mais sobre como gerar um número aleatório, visite JavaScript Generate Random Number.

  • O usuário é solicitado a adivinhar um número de 1 a 10 .
  • O parseInt()converte o valor da string numérica em um valor inteiro.
  • O whileloop é usado para receber a entrada do usuário até que ele adivinhe a resposta correta.
  • A if… elseinstrução é usada para verificar a condição. O ==operador igual a é usado para verificar se a estimativa estava correta.
     if(number == random)

Para saber mais sobre os operadores de comparação, visite Operador de comparação de JavaScript.

Artigos interessantes...