Как зациклить мой вопрос? Javascript Number Guessing Game - PullRequest
0 голосов
/ 02 сентября 2018

Новый программист здесь - я пытаюсь создать игру с угадыванием чисел. Если я угадываю слишком высоко, он говорит мне: «Слишком высоко, угадать снова». Если я угадываю слишком низко, он говорит мне: «Слишком низко, угадать снова». Если я угадываю правильно, это говорит мне правильно. Но я могу только угадать 1 неправильный ответ в каждом направлении. Я искал и искал и попробовал почти все (если / еще / пока)

Я знаю, что это, вероятно, простое исправление для опытных программистов. Пожалуйста помоги. Спасибо ---

var secretNumber = 53;

var guess = prompt('Guess a number');


if (guess == (53)) {
alert("Yes you got it! 53 is the right answer!")}

while (guess < (53)) {
var guess = prompt('Too Low, Guess again');
}

while (guess > (53)) {
var guess = prompt('Too High, Guess again');
}

1 Ответ

0 голосов
/ 02 сентября 2018

Попробуйте это:

var secretNumber = 53;

var high = false;
var low = false;
var done = false;

var guess = prompt('Guess a number');
while (!done) {
  if (guess === secretNumber) {
    alert("Yes you got it! " + secretNumber + " is the right answer!");
    done = true;
  } else if (guess < secretNumber) {
    if (low) {
      alert('You have failed');
      done = true;
    } else {
      low = true;
      guess = prompt('Too Low, Guess again');
    }
  } else if (guess > secretNumber) {
    if (high) {
      alert('You have failed');
      done = true;
    } else {
      high = true;
      guess = prompt('Too High, Guess again');
    }
  }
}

Это не оптимально, но для этого упражнения следует делать.

...