质数(prime number)又称素数,有无限个。质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数(可以被整除的)的数称为质数。
方法一:
function prime(num){ var a=[]; var i,j; for(i=2;i<=num;i++) { for (j = 2; j < i; j++) { if (i % j == 0) { break; //如果i在2-(i-1)之间有能够整除的数字,那么跳出循环 } } if (i == j) { //i除了它本身外没有其他可以被整除的数 a.push(i); } } return a; } console.log(prime(100));
方法二:
function prime(num){ //函数判断某一个数是否为质数 var i; while (num>=2) { for (i = 2; i <=Math.sqrt(num); i++) { if (num % i == 0) { return false; } } return true; } } var a=[]; for(var j=2;j<=1000;j++) { //生成质数的范围 if (prime(j)) { a.push(j); } } console.log(a);方法三:function prime(num){ var i,j; var a=[]; for(i=2;i<=num;i++) { for (j = 2; j <= Math.sqrt(i); j++) { if (i%j== 0) { break; } } if(j>Math.sqrt(i)){ a.push(i); } } return a; } console.log(prime(100));