Skip to content

Instantly share code, notes, and snippets.

@renskiy
Last active August 29, 2015 14:13
Show Gist options
  • Select an option

  • Save renskiy/b675524d8d9e6cdc9041 to your computer and use it in GitHub Desktop.

Select an option

Save renskiy/b675524d8d9e6cdc9041 to your computer and use it in GitHub Desktop.
Sum of first N prime numbers
3
4
100
100
1000
<?php
function get_next_prime_number($number) {
while (true) {
$number++;
$divider = floor($number / 2);
$is_prime = true;
while ($divider > 1) {
if ($number % $divider == 0) {
$is_prime = false;
break;
}
$divider--;
}
if ($is_prime) {
return $number;
}
}
}
function get_prime_numbers($count = 2) {
static $numbers = [2, 3];
for ($i = count($numbers); $i < $count; $i++) {
$last_number = end($numbers);
$numbers[] = get_next_prime_number($last_number);
}
return array_slice($numbers, 0, $count);
}
$data = fopen('data.txt', 'r');
while($line = fgets($data)) {
echo array_sum(get_prime_numbers($line)) . "\n";
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment