Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- function solution($count){
- $i = 2;
- $result = 0;
- while($i <= $count){
- if(isPrime($i)){
- $result += $i;
- }
- $i++;
- }
- print $result;
- return $result;
- }
- function isPrime($num) {
- //1 is not prime. See: http://en.wikipedia.org/wiki/Prime_number#Primality_of_one
- if($num == 1)
- return false;
- //2 is prime (the only even number that is prime)
- if($num == 2)
- return true;
- /**
- * if the number is divisible by two, then it's not prime and it's no longer
- * needed to check other even numbers
- */
- if($num % 2 == 0) {
- return false;
- }
- /**
- * Checks the odd numbers. If any of them is a factor, then it returns false.
- * The sqrt can be an aproximation, hence just for the sake of
- * security, one rounds it to the next highest integer value.
- */
- $ceil = ceil(sqrt($num));
- for($i = 3; $i <= $ceil; $i = $i + 2) {
- if($num % $i == 0)
- return false;
- }
- return true;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement