FCC_Intermediate Algorithm_Sum All Primes

1.任务及要求

Sum All Primes


求小于等于给定数值的质数之和。

只有 1 和它本身两个约数的数叫质数。例如,2 是质数,因为它只能被 1 和 2 整除。1 不是质数,因为它只能被自身整除。

给定的数不一定是质数。

如果你被卡住了,记得开大招 Read-Search-Ask。尝试与他人结伴编程、编写你自己的代码。

2.我的解法

 1 // 方法参考:博客园:https://www.cnblogs.com/SupremeBoy/p/10241294.html
 2 
 3 function sumPrimes(num) {
 4   var sum = 0;
 5 
 6   for(var i = 0; i <= num; i++){
 7     if(isPrime(i)){
 8       sum += i;
 9     }
10   }
11   return sum;
12 }
13 
14 var isPrime = function(flag){
15   if(flag <= 1){
16     return false;
17   }
18   if(flag ==2 || flag == 3){
19     return true;
20   }
21   if(flag % 6 != 1 && flag % 6 != 5){
22     return false;
23     }
24   var sqrtFlag = Math.floor(Math.sqrt(flag));
25     for(var i = 5; i <= sqrtFlag; i +=6) {
26       if(flag % i === 0 || flag % (i+2) === 0){
27         return false;
28       }
29       } 
30     return true;
31 };
32 
33 sumPrimes(10);

3.发现的其他解法

// 简书:https://www.jianshu.com/p/66220cb7977d

// 博客园:https://www.cnblogs.com/fffangrui/p/6114070.html?utm_source=itdadao&utm_medium=referral

// CSDN:https://blog.csdn.net/weixin_30872499/article/details/99363121

猜你喜欢

转载自www.cnblogs.com/yoursatan/p/12497095.html
ALL