Skip to content

Instantly share code, notes, and snippets.

@MR-D05
Created July 13, 2021 17:35
Show Gist options
  • Save MR-D05/0db5eec602dcf80d737669081081ae4c to your computer and use it in GitHub Desktop.
Save MR-D05/0db5eec602dcf80d737669081081ae4c to your computer and use it in GitHub Desktop.
<?php
// PHP code to check whether a number is prime or Not
// function to check the number is Prime or Not
function primeCheck($number): int
{
if ($number == 1)
return 0;
for ($i = 2; $i <= sqrt($number); $i++) {
if ($number % $i == 0)
return 0;
}
return 1;
}
function findPrimesRange($start, $finish): array
{
// Initialise the range of numbers.
$number = 2;
$range = range(2, $finish);
$primes = array_combine($range, $range);
// Loop through the numbers and remove the multiples from the primes array.
while ($number * $number < $finish) {
for ($i = $number; $i <= $finish; $i += $number) {
if ($i == $number) {
continue;
}
unset($primes[$i]);
}
$number = next($primes);
}
// Slice the array into the given range
foreach ($primes as $prime) {
if ($prime < $start) {
unset($primes[$prime]);
} else {
break;
}
}
return $primes;
}
function test(): array
{
$setOne = findPrimesRange(100, 1000);
$setTwo = findPrimesRange(10, 100);
$setThree = findPrimesRange(1000, 10000);
$validNumbers = [];
foreach ($setOne as $number) {
$test = 1;
foreach ($setTwo as $secondNumber) {
foreach ($setThree as $thirdNumber) {
$valid = intval(strval($number) . strval($secondNumber) . strval($thirdNumber));
if (primeCheck($valid) == 1 && !isset($valid, $validNumbers)) {
array_push($validNumbers, $valid);
}
}
}
}
return $validNumbers;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment