Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/441.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript猜数字游戏不起作用_Javascript_Html - Fatal编程技术网

Javascript猜数字游戏不起作用

Javascript猜数字游戏不起作用,javascript,html,Javascript,Html,你好,我正在创建一个简单的游戏,程序生成一个1-1000之间的随机数,然后用户输入一个数字。如果较小,则生成的值太低;如果较大,则生成的值太高;如果正确,则表示祝贺。问题是我的程序生成的数据总是太高。你能帮我吗?谢谢大家! <!DOCTYPE html> <html> <head> <script type="text/javascript"> var numri=gjenero(); function gjenero(){

你好,我正在创建一个简单的游戏,程序生成一个1-1000之间的随机数,然后用户输入一个数字。如果较小,则生成的值太低;如果较大,则生成的值太高;如果正确,则表示祝贺。问题是我的程序生成的数据总是太高。你能帮我吗?谢谢大家!

<!DOCTYPE html>
 <html>
 <head>
<script type="text/javascript">
    var numri=gjenero();
    function gjenero(){
        return Math.floor(1000*Math.random())+1;
    }
    function kontrollo(){
     pergjigja=parseInt(document.getElementById("pergjigja").value);
        if (numri<pergjigja){
           alert("Too low!");
           document.getElementById("pergjigja").value="";

        }
        else if (numri>pergjigja){
            alert("Too high!");
            document.getElementById("pergjigja").value="";
        }
        else {
             alert("Congratulations.Continue the game with another 
        number!");
            gjenero();
        }
    }
   </script>
    </head>
       <body>

   <input type="text" id="pergjigja" >
   <button onclick="kontrollo();">Check</button>
  </body>
   </html>

var numri=gjenero();
函数gjenero(){
返回Math.floor(1000*Math.random())+1;
}
函数kontrollo(){
pergjigja=parseInt(document.getElementById(“pergjigja”).value);
如果(numripergjigja){
警惕(“太高了!”);
document.getElementById(“pergjigja”).value=“”;
}
否则{
警报(“祝贺你。用另一个继续游戏
数字!);
gjenero();
}
}
检查

您的逻辑向后:

numri
是随机数,
pergjigja
是输入。如果键入
1001
,则会看到过低的错误消息

您应该像这样更新
操作符,以获得所需的行为:

if (numri>pergjigja){
   alert("Too low!");
   document.getElementById("pergjigja").value="";

}
else if (numri<pergjigja){
    alert("Too high!");
    document.getElementById("pergjigja").value="";
}
else {
    alert("Congratulations.Continue the game with another number!");
    numri=gjenero();
}
if(numri>pergjigja){
警惕(“太低!”);
document.getElementById(“pergjigja”).value=“”;
}

否则,如果(numri“我的程序总是生成太高”我运行了代码,但没有发生这种情况。随机数是157,我输入了200,它表示“太低”。(作为旁注,这些消息对我来说似乎是倒退的-我会认为消息告诉我我的数字太低,但事实正好相反)请注意,在函数的末尾,您正在生成一个新的数字,而没有将其分配给变量。也许这就是问题所在?下面是一个工作解决方案: