2个回答
展开全部
function getNum(MaxNum ){
var count = 1; 码知中
var PrimeArys = [2];
var PrimeTemp = [];
var oNum = Math.ceil( Math.sqrt( MaxNum ) );
for(i=3; 猛腔i<oNum; i+=2){
if( PrimeTemp[i]==null){
for(j=i; i*j<=MaxNum; j+=2){
PrimeTemp[ i*j ] = 0;
}
}
}
for(i=3; i<=MaxNum; i+=2){
if( PrimeTemp[i]==null)
迟山 PrimeArys[ count++ ] = i;
}
return PrimeArys;
}
想要1000以内的素数(质数)就调用这个方法getNum(1000);
展开全部
/**
*@description 获取质数
*@param int num 取值范围
*@returns Array 返回该范围内的质数,没毁坦有返回空数袭余岩拍御组
*/
function primeNumbers(num){
num = parseInt(num);
var a1 = [2,3,5],
a2,
n, flag;
if(isNaN(num) || num <= 1) a2 = [];
else if(num < 4) a2 = [2,3];
else{
a2 = [2,3,5];
for(var m = 6; m <= num; m++){
flag = false;
for(n = 0; n < a1.length; n++){
temp = m / a1[n];
if(temp === parseInt(temp)){
flag = true;
n = 10;
}
}
if(!flag) a2.push(m);
}
}
return a2;
}
*@description 获取质数
*@param int num 取值范围
*@returns Array 返回该范围内的质数,没毁坦有返回空数袭余岩拍御组
*/
function primeNumbers(num){
num = parseInt(num);
var a1 = [2,3,5],
a2,
n, flag;
if(isNaN(num) || num <= 1) a2 = [];
else if(num < 4) a2 = [2,3];
else{
a2 = [2,3,5];
for(var m = 6; m <= num; m++){
flag = false;
for(n = 0; n < a1.length; n++){
temp = m / a1[n];
if(temp === parseInt(temp)){
flag = true;
n = 10;
}
}
if(!flag) a2.push(m);
}
}
return a2;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询