The sum of the primes below 10 is 2 + 3 + 5 + 7 = 17.
Find the sum of all the primes below n
.
primeSummation(17) should return 41.
primeSummation(2001) should return 277050.
primeSummation(140759) should return 873608362.
primeSummation(2000000) should return 142913828922.
function primeSummation(n) {
if(n<2){
return 0;
}
let primeArray = Array(n).fill(true);
primeArray[0] = primeArray[1] = false;
for(let i=2;i<=Math.sqrt(n);i++){
if(isPrime(i)){
for(let j=i*i;j<n;j+=i){
primeArray[j] = false;
}
}
}
let sum = 0;
for(let i=0;i<n;i++){
if(primeArray[i]){
sum+=i;
}
}
return sum;
}
// verif if a number is prime
function isPrime(num){
for(let i = 2;i<=Math.sqrt(num);i++){
if(num%i === 0){
return false;
}
}
return true;
}