<body>
<input id="input"></input>
<button id="button" onclick="evaluate()">Submit</button>
<br>
<p id="id"></p>
</body>
<script>
var a = 1;
var b = 100;
var z = Math.floor(Math.random() * (b-a)) + a;
document.getElementById("id").innerHTML = ("Pick a number between 1 and 100. I will try to guess it. I think it's " + z + ".");
var y = document.getElementById("input").value;
function evaluate() {
var y = document.getElementById("input").value;
if (y == 0) {
a = x + 1;
z = (a+b)/2;
if (z%2==1) {
z = z-0.5
}
document.getElementById("id").innerHTML = ("Now I think it's " + z);
stopEvent();
}
if (y == 2) {
b = x - 1;
z = (a+b)/2;
if (z%2==1) {
z = z-0.5;
}
document.getElementById("id").innerHTML = ("Now I think it's " + z);
stopEvent();
}
if (y == 1) {
document.getElementById("id").innerHTML = ("Yay! I'm so smart.");
stopEvent();
}
}
</script>
当我点击按钮时,它没有想到另一个整数,它什么也没做。我找不到任何错别字。该程序应该猜测你的数字7猜测。你想到一个1到100之间的数字,它首先选择一个随机整数1-100,然后你告诉它是否太高或太低,然后它根据你告诉它的重置它的范围,它选择另一个整数,另一个,直到它缩小到1整数。
答案 0 :(得分:1)
永远不会定义您的变量x
。当未定义时,您会在计算中直接使用x
。什么是x
应该是什么?定义x
后,一切都应该有效。
a = x + 1; // What is x?
如果您没有定义x
,那么您的函数evaluate()
将会中断。
答案 1 :(得分:1)
evaluate()是一种可用的预定义方法,因此如果发现冲突,请更改方法名称。
现在正如mwilson所提到的,你使用变量x
而没有声明它有一些价值。
我猜您已经在代码中定义了stopEvent()
,否则您也会遇到错误。