首页 > 解决方案 > 如何循环我的问题?Javascript猜数字游戏

问题描述

新程序员在这里 - 我正在尝试创建一个猜数字游戏。如果我猜得太高,它会告诉我“太高,再猜一次”。如果我猜得太低,它会告诉我“太低,再猜一次”。如果我猜对了,它就告诉我正确。但我只能在每个方向猜测 1 个错误答案。我已经搜索并搜索并尝试了几乎所有内容(if/else/while)

我知道这对于有经验的程序员来说可能是一个简单的解决方法。请帮忙。谢谢 - -

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');
}

标签: javascriptif-statementwhile-loopnumbers

解决方案


尝试这个:

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');
    }
  }
}

这不是最佳的,但对于这个练习应该做。


推荐阅读