我试图遍历一个很大的数字(准确地说是 60 亿),但我不能,因为我的电脑死机了。我该如何解决这个问题。我应该找到 的最大素因数600851475143
。
function prime(n) {
if (n === 1 || n === 2) return false;
if (n % 2 === 0 || n % 3 === 0) return false;
return true;
}
var n = 600851475143;
for (var i = 1, c = []; i < n; i++) {
if ((n % i === 0) && prime(i)) {
c.push(i);
}
}
我已经完成了。我将素数存储在一个数组中。