DEV Community

Chinwendu Agbaetuo
Chinwendu Agbaetuo

Posted on

Add the sum of prime numbers for a given integer using JavaScript

Write a function that takes a positive integer as a parameter and displays the sum of all prime numbers less or equal to it.

Solution

// Define a function named addPrimeSum that takes a single parameter 'number'
function addPrimeSum(number) {
  // Initialize a variable 'result' to store the sum of prime numbers, starting from 0
  let result = 0;

  // Define an inner function named isPrime that takes a single parameter 'num'
  function isPrime(num) {
    // If 'num' is less than 2, it is not prime, so return nothing (undefined)
    if (num < 2) return;

    // Loop from 2 to half of 'num' to check for factors
    for (let i = 2; i <= num / 2; i++) {
      // If 'num' is divisible by 'i', it's not prime, so return nothing (undefined)
      if (num % i === 0) return;
    }
    // If no factors are found, return 'num' indicating it is a prime number
    return num;
  }

  // Loop while 'number' is greater than 1
  while (number > 1) {
    // Check if 'number' is prime using the isPrime function
    if (isPrime(number)) {
      // If it is prime, add it to 'result'
      result += number;
    }
    // Decrement 'number' by 1 to check the next lower number
    number--;
  }

  // Return the total sum of all prime numbers found
  return result;
}

console.log(addPrimeSum(5));
console.log(addPrimeSum(21));
console.log(addPrimeSum(100));
console.log(addPrimeSum(239));
console.log(addPrimeSum(956));
Enter fullscreen mode Exit fullscreen mode

Solution

> 10
> 77
> 1060
> 5589
> 70241
Enter fullscreen mode Exit fullscreen mode

Top comments (0)