Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
46
Task/Emirp-primes/PHP/emirp-primes.php
Normal file
46
Task/Emirp-primes/PHP/emirp-primes.php
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
<?php
|
||||
|
||||
function is_prime($n) {
|
||||
if ($n <= 3) {
|
||||
return $n > 1;
|
||||
} elseif (($n % 2 == 0) or ($n % 3 == 0)) {
|
||||
return false;
|
||||
}
|
||||
$i = 5;
|
||||
while ($i * $i <= $n) {
|
||||
if ($n % $i == 0) {
|
||||
return false;
|
||||
}
|
||||
$i += 2;
|
||||
if ($n % $i == 0) {
|
||||
return false;
|
||||
}
|
||||
$i += 4;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
function is_emirp($n) {
|
||||
$r = (int) strrev((string) $n);
|
||||
return (($r != $n) and is_prime($r) and is_prime($n));
|
||||
}
|
||||
|
||||
$c = $x = 0;
|
||||
$first20 = $between = '';
|
||||
do {
|
||||
$x++;
|
||||
if (is_emirp($x)) {
|
||||
$c++;
|
||||
if ($c <= 20) {
|
||||
$first20 .= $x . ' ';
|
||||
}
|
||||
if (7700 <= $x and $x <= 8000) {
|
||||
$between .= $x . ' ';
|
||||
}
|
||||
}
|
||||
} while ($c < 10000);
|
||||
|
||||
echo
|
||||
'First twenty emirps :', PHP_EOL, $first20, PHP_EOL,
|
||||
'Emirps between 7,700 and 8,000 :', PHP_EOL, $between, PHP_EOL,
|
||||
'The 10,000th emirp :', PHP_EOL, $x, PHP_EOL;
|
||||
Loading…
Add table
Add a link
Reference in a new issue