这个嵌套的 for 相加,直到当前 i 和 j 都为 3。一旦变量达到上限,如何重置变量以便继续循环?
或者这不是正确的思维过程?
for (i=1; i<=3; i=i+1)
{
for (j=1; j<=3; j=j+1)
{
ans=i + j;
document.write(i + "+" + j + "=" + "<br />");
var user_input = prompt("What is your answer?",0);
while (user_input != ans) {
if (ans == user_input)
{
document.write("Yes, the answer is " + ans + "<br />");
}
else
{
document.write("No, the answer is " + ans + "<br />");
}
}
}
}
我尝试过 while 循环,但它总是崩溃。我只是对问题的逻辑有点不确定。
我想做的事情:
如果用户在任何时候回答正确,循环就会结束。但我不希望数学加到 6 以上。一旦达到 6,我最好将 i 和 j 重置回 6。
最佳答案
我认为你不需要 while 循环。假设如果用户回答错误,他们会收到新问题,如果他们回答正确,整个过程就会停止,请尝试这个
var finish = false;
for (i=1; i<=3; i=i+1)
{
for (j=1; j<=3; j=j+1)
{
ans=i + j;
console.log(i + "+" + j + "=" + "<br />");
var user_input = prompt("What is your answer?",0);
if (ans == user_input)
{
finish = true;
console.log("Yes, the answer is " + ans + "<br />");
break;
}
else
{
console.log("No, the answer is " + ans + "<br />");
}
}
if(finish){break;}
if(i==3 && j==4){i =0; j=0}
}
关于javascript - 如何继续循环直到我的变量等于用户输入? JavaScript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43901442/