我不太确定我在这里遇到什么问题,我希望有人可以帮助我。这是我在Stack Overflow上的第一篇文章,我对编程比较陌生,所以我希望我不会冒犯任何人在这里的感受。
这是提示(是的,这是项目欧拉问题,请不要给出答案):1到20之间的每个数字可以整除的最低数字是多少?
这是我编码的内容:
int target = 21;
int divisor;
boolean success = false;
while (!success)
{
for (divisor = 1; divisor < 21; divisor++)
{
if (target % divisor != 0)
{
break;
}
else
{
if (divisor == 20)
{
success = true;
}
}
target++;
}
}
System.out.println(target);
我得到的答案(232792581)被P.E.标记为不正确。谁能告诉我这里出错了什么?
谢谢大家!!
答案 0 :(得分:1)
您的问题是您在错误的地方target++
。现在代码的方式是在for
循环中调用,在那里测试数字 - 即你在检查目标的同时更改目标。移动target++
语句,使其超出for
循环,但仍在while
循环中。