w3resource

PHP Exercises: Compute the sum of first n given prime numbers

PHP: Exercise-65 with Solution

Write a PHP program to compute the sum of first n given prime numbers.

Input: n ( n ≤ 10000). Input 0 to exit the program.

Pictorial Presentation:

PHP: Compute the sum of first n given prime numbers.

Sample Solution:

PHP Code:

<?php
// Set the maximum value for prime numbers
$max = 105000;

// Create a fixed-size array to store prime flags
$arr = new \SplFixedArray($max + 1);

// Initialize the array with 1 (considering all numbers as prime initially)
for ($i = 2; $i <= $max; $i++) {
    $arr[$i] = 1;
}

// Sieve of Eratosthenes algorithm to mark non-prime numbers
for ($i = 2, $len = sqrt($max); $i <= $len; $i++) {
    if (!$arr[$i]) {
        continue;
    }
    for ($j = $i, $len2 = $max / $i; $j <= $len2; $j++) {
        $arr[$i * $j] = 0;
    }
} 

// Process input until '0' is entered
while (($line = trim(fgets(STDIN))) !== '0') {
    // Convert the input to an integer
    $n = (int)$line;

    // Initialize variables for result and count
    $result = 0;
    $cnt = 0;

    // Find and sum the first N prime numbers
    for ($i = 2; $i <= $max; $i++) {
        if ($cnt === $n) {
            break;
        } elseif ($arr[$i]) {
            $result += $i;
            $cnt++;
        }
    }

    // Output the result
    echo "Sum of first " . $n . " prime numbers:";
    echo $result, PHP_EOL;
}

?>

Sample Input:
25
0

Sample Output:

Sum of first 25 prime numbers:1060

Flowchart:

Flowchart: Compute the sum of first n given prime numbers.

PHP Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a PHP program to replace a string "Python" with "PHP" and "Python" with " PHP" in a given string.
Next: Write a PHP program that accept a even number (n should be greater than or equal to 4 and less than or equal to 50000, Goldbach number) from the user and create a combinations that express the given number as a sum of two prime numbers. Print the number of combinations.

What is the difficulty level of this exercise?

Test your Programming skills with w3resource's quiz.



Follow us on Facebook and Twitter for latest update.