/**
* 求质数(素数)算法
* 质数(prime number)又称素数
* 质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。
* http://jsrun.net/rhhKp/edit
*/
/**
* 判断是否为质数
* @param {number} num
*/
function isPrime(num) {
if (num < 2) return false;
var sqrt = Math.sqrt(num);
for (let i = 2; i <= sqrt; i++) {
if (num % i == 0) {
return false;
}
}
return true;
}
/**
* 获取区间内的所有质数
* @param {number} min
* @param {number} max
*/
function getPrimes(min, max) {
var primes = [];
for (let i = min; i <= max; i++) {
if (isPrime(i)) {
primes.push(i);
}
}
return primes;
}
// 求2-100间的质数
alert(getPrimes(2, 100).join(","));