求最大质因子

求一个数的最大质因子

function maxPrimeFactor(n) {
    var pf = 1; // 最大质因数

    for (var i = 2; n > 1; ++i) {
        // 如果 n 能被 i 整除
        // 说明此时最大的质因数是 i
        if (n % i == 0) {
            n /= i;
            pf = i;

            // 循环用 n 除以 i,直到不能除尽为止
            // 保证了 i 是一个质数
            while (n % i == 0) {
                n /= i;
            }
        }
    }

    return pf;
}


你可能感兴趣的:(JavaScript)