【问题标题】:while loop, is looping results instead of through the questionswhile 循环,是循环结果而不是通过问题
【发布时间】:2018-09-23 19:39:17
【问题描述】:

我在 node 中创建了一个猜数游戏,但是我的 while 循环假设循环遍历问题(请猜一个介于 0-maxNum 之间的数字,当之前猜到的答案不正确时。)我已经做到了,如果 ranNum不等于太多猜测的循环,如果它是真的,我为该语句添加了一个中断,但我似乎无法弄清楚是否有人有任何可以帮助的想法!)

let maxNum= readlineSync.question(name +" "+'choose a number between ' + 0 
        +" 
         "+ ' and ' +  number + '\n') 
        //   }
    if (maxNum > number) {
    console.log(`You cannot use a number greater than ` + number)

  let ranNum = Math.floor(Math.random() * maxNum) + 1; 

      while(ranNum !== number) 
     {

         if (number === ranNum) {
           console.log('Correct! The number was ' + ranNum)
        break;
    } else if ( ranNum >  number) {
        console.log('Close! Too high.');
    } else if ( ranNum < number) {
        console.log('Almost! Too low.');
    }
}
     }
    }

【问题讨论】:

  • 循环内没有任何变化

标签: javascript node.js loops while-loop


【解决方案1】:

你不需要做一个while循环,这会让你在答案不正确时陷入循环。

我认为这段代码和你想做的一样。

<html>
<head>
    <script>
    var MAX = 50;
    var ranNum = Math.floor(Math.random() * MAX) + 1;
    function test(){
    var number = parseInt(document.forms["form"]["in"].value);
        if (number == ranNum) {
            alert('Correct! The number was ' + ranNum)
        } else if ( ranNum >  number) {
            alert('Close! Too high.');
        } else if ( ranNum < number) {
            alert('Almost! Too low.');
        }
    }
    </script>
</head>
<body>
    <form name = "form" onsubmit = "test()">
        <input type = "textarea" name = "in" />
        <input type = "submit" value = "submit"/>
    </form>
</body>

我希望这能回答你的问题。

【讨论】:

    猜你喜欢
    • 2012-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-10
    • 2011-10-06
    • 1970-01-01
    • 2014-12-05
    • 2011-06-19
    相关资源
    最近更新 更多