
质素求和算法挑战
方法一:
function sumPrimes(num) {
var res=getarr(num).reduce(function(a,b){
return a+b;
});
return res;
}
function getarr(num){ //返回质数数组
var arr=[];
outer:for(var i=2;i<=num;i++){
for(var j=2;j<i;j++){
if( i%j===0 ){
continue outer;
}
}
arr.push(i);
}
return arr;
}
sumPrimes(10);
方法二:
function sumPrimes(num) {
var r=0;
for(var i=2;i<=num;i++){
var isPrime = true;
for(var j=2;j<=i;j++){
if(i%j===0 && i!==j){
isPrime = false;
break;
}
}
if(isPrime){
r+=i;
}
}
return r;
}
sumPrimes(10);