用 JavaScript 查找完美数
完美数是一个正整数,它等于其所有正约数之和(不包括自身)。正整数 x 的约数是可以整除 x 的正整数。
例如 −
28 is a perfect number, because 28 = 1 + 2 + 4 + 7 + 14
我们需要编写一个 JavaScript 函数,它接受一个数字(即 n),并确定 n 是否是完美数。
示例
const num = 28; const checkPerfectNumber = (num = 1) => { if(num === 1) { return false; }; let sum = 1; for(let i = 2; i <= Math.floor(Math.sqrt(num)); i++){ if(num % i === 0) { sum = sum + i + num / i; if(sum > num) { return false; } }; }; return sum === num; }; console.log(checkPerfectNumber(num));
输出
控制台输出结果为 −
true
广告