То, что я пытаюсь сделать, это рандомизировать и назначить два числа переменным и добавить их при отображении переменных пользователю. Пользователь вводит сумму двух переменных, и если вход и сумма совпадают, пользователь выигрывает. Хотя, когда я сравниваю, результат всегда ложный, когда я использовал console.log, чтобы увидеть логическое значение. Я использую html и JavaScript. Вот мой код:Сравнение всегда неверно при добавлении двух случайных чисел и сравнении суммы с пользовательским вводом
<html>
<head>
<title>
Game A
</title>
<script>
var y = parseInt(Math.floor(Math.random()*20));
var z = parseInt(Math.floor(Math.random()*20));
function myFunction() {
var p = parseInt(document.getElementById("demo"));
var z = parseInt(p);
var x = parseInt(y) + parseInt(z);
var q = parseInt(x);
console.log(z===q?true:false);
if(z===q){
alert("Good job!");
}
else{
alert("aw, try again!");
}
}
</script>
</head>
<body>
<p>Click the button to calculate x.</p>
<br/>
<div id="a" style="display:inline-block;heigh:100px;width:100px;">
<script>
document.getElementById('a').innerHTML= y;
</script>
</div>
<div id="b" style="display:inline-block;heigh:100px;width:100px;">
<script>
document.getElementById('b').innerHTML= z;
</script>
</div>
<input id="demo"></input>
<button onclick="myFunction()">Try it</button>
</body>
</html>
, потому что вы переназначить г в вашем MYFUNCTION и добавляя у после этого. так что q всегда больше, чем z, когда y остается 0 – Blauharley