代碼總是認為 num1 是較小的數字,即使它不是 如果第二個輸入是奇數,但第一個是偶數,那么輸出是 num1 較小的偶數而不是“第二個輸入是奇數,糾正它”
我還需要“兩個數字都相同,請更正”輸出
這將是我的錯誤解決方案,我怎樣才能使它起作用?
<body>
<input id="num1">
<input id="num2">
<button onclick="myFunction()">Calculate</button>
<p id="p"></p>
</body>
const p = document.getElementById("p")
function myFunction() {
var num1, num2;
num1 = Number(document.getElementById("num1").value);
num2 = Number(document.getElementById("num2").value);
if(num1%2==0 >num2%2==0){
p.innerHTML=num2 " is the smaller even number"
if(num1%2!=0){
p.innerHTML=num1 " first input is odd, correct it"
}
else {
p.innerHTML=num2 " second input is odd, correct it"
}
}
else{
p.innerHTML=num1 " is the smaller even number"
}
}
uj5u.com熱心網友回復:
您在此 if 陳述句中比較布林值:
if(num1%2==0 >num2%2==0)
將其更改為
if(num1 > num2)
uj5u.com熱心網友回復:
這是一些更新的代碼。我不確定你的源代碼是什么樣的,所以我基于我自己的最小可重現示例。
我想如果你先通過檢查兩個數字是否是偶數來拆分它會更容易閱讀。如果不是,請檢查哪一個不均勻。
如果它們是偶數,您可以列印較小的。為方便起見,我一開始就這樣做了,但如果愿意,您可以將其移至else陳述句中。
function myFunction() {
var num11, num2;
var p = document.getElementsByTagName("P")[0]
num1 = Number(document.getElementById("num1").value);
num2 = Number(document.getElementById("num2").value);
var smaller = num1 < num2 ? num1 : num2
if(num1%2!=0 || num2%2!=0){
if(num1%2!=0){
p.innerHTML=num1 " first input is not even, correct it"
} else {
p.innerHTML=num2 " second input is not even, correct it"
}
}
else if (num1 === num2){
p.innerHTML="Both numbers are equal, correct it."
} else {
p.innerHTML=smaller " is the smaller even number"
}
}
<p></p>
<input id="num1"/>
<input id="num2"/>
<button onclick="myFunction()">Run</button>
uj5u.com熱心網友回復:
在您的版本中,您沒有解決兩者都是奇數的可能性,并且您還在比較兩個布林值。
function myFunction() {
var num1, num2;
num1 = Number(document.getElementById("num1").value);
num2 = Number(document.getElementById("num2").value);
if(num1%2!==0 && num2%2!==0){
p2.innerHTML = num1 'and' num2 'are odd, correct them';
}
else if(num1%2!==0 && num2%2===0){
p2.innerHTML = num1 'is odd, correct it';
}
else if(num1%2===0 && num2%2!==0){
p2.innerHTML = num2 'is odd, correct it';
}
else{
if(num1 < num2){
p2.innerHTML=num1 " is the smaller even number"
}
else if(num2 < num1) {
p2.innerHTML=num2 " is the smaller even number";
}
else {
p2.innerHTML = 'They are the same number, correct one'
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/466346.html
標籤:javascript html
上一篇:如何將文本移動到下一行?
