【发布时间】:2020-01-06 11:50:20
【问题描述】:
我似乎无法达到最大应为 20 的变量的限制。有一个内部循环应该测试 1 到 20 之间的所有数字是否可以除以外部循环中的变量,没有任何小数位- 所以整数。当limit = 20时,我从外循环返回,并且我知道的外变量可以除以内循环的每次迭代。似乎很容易。 Vscode 并没有走多远,我从来没有超过 limit = 10。看起来我的 vs 编译器刚刚触底。
有什么想法吗?非常感谢...
let starter = 2520;
let limit = 0;
while (limit < 20) {
let i = 1;
while (i <= 20) {
if (starter % i !== 0) {
limit = 0;
break;
}
limit = i;
i++;
}
if (limit === 20) {
return starter;
}
starter++;
}
应该在
退出limit === 20
【问题讨论】:
-
你正在搜索的数字,可以被 1 到 20 之间的所有整数整除,是 232792560 (2*2*2*2*3*3*5*7*11*13*17*19 ) - 这需要相当多的迭代!
-
@Bergi 您是如何/在哪里成功运行此代码的?如果您是正确的,它可以正常运行,那么问题可能真的只是 OP 所暗示的 VSCode?span>
-
@DanFriedman 我只是把它放在我的 Chrome devtools 控制台中(花了几秒钟 - 不是永恒,但仍然如此)。是的,我的猜测是在 vscode 调试器中运行代码,即使启用了一些断点,也会大大减慢速度。 (要查看
limit或11,必须进行27720 - 2520迭代) -
在不解决问题的情况下,我是否可以建议您始终将
starter增加20?
标签: javascript while-loop visual-studio-code