Alla fine sono riuscita a trovare un algoritmo per calcolare tutti i numeri primi minori di un certo $n dato in input. Ho risolto in questo modo:
$n = $_POST["eratostene"];
if(is_numeric($n))
{
for ($p=2; $p<$n; $p++)
{$primes[]=$p;}
function IsPrimeLessThenN($var){
$n = $_POST["eratostene"];
for ($i = 2; $i <= min($n/2,$var); $i++)
{if($var % $i != 0 || $var == $i)
{$boolean = true;
continue;}
else
{$boolean = false;
break;}
}
return $boolean;}
$primes=array_filter($primes,"IsPrimeLessThenN");
echo "The primes less then $n are ";
foreach($primes as $prime)
{echo $prime . " ";}
}
else
{echo "Error: please insert a positive integer!";}

Rispondi quotando