JavaScript中数字的素性测试
质数(或素数)是大于1的自然数,不能通过将两个较小的自然数相乘而形成。所有其他大于1的自然数称为复合数。素数测试是一种用于确定输入数字是否为素数的算法。
我们需要编写一个接受数字的JavaScript函数,并检查它是否为质数。
示例
以下是代码-
const findPrime = (num = 2) => {
if (num % 1 !== 0) {
return false;
}
if (num <= 1) {
return false;
}
if (num <= 3) {
return true;
}
if (num % 2 === 0) {
return false;
}
const dividerLimit = Math.sqrt(num);
for (let divider = 3; divider <= dividerLimit; divider += 2) {
if (num % divider === 0) {
return false;
}
}
return true;
};
console.log(findPrime(2));
console.log(findPrime(97));
console.log(findPrime(131));
console.log(findPrime(343));输出结果
以下是控制台上的输出-
true true true false