From b19fdf4bb04f41e645c0a80416974042ac55e93e Mon Sep 17 00:00:00 2001 From: "Elias F." Date: Mon, 17 Nov 2025 15:38:40 +0100 Subject: [PATCH] Fixed up a few last things. --- index.php | 63 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 32 insertions(+), 31 deletions(-) diff --git a/index.php b/index.php index 6128a39..c80cd67 100644 --- a/index.php +++ b/index.php @@ -2,15 +2,11 @@ - + Primzahlen @@ -19,38 +15,38 @@
Bitte eine Zahl >= 2 eingeben.

"; + } else { + $primeNumbers = []; + for ($i = 2; $i <= $max; $i++) { + if (isPrime($i)) { + $primeNumbers[] = $i; + } } - } - echo "

Primzahlen von " . htmlspecialchars($_POST["input"], ENT_QUOTES, 'UTF-8') . " sind:

"; - - foreach($primeNumbers as $number) { - echo "" . $number . "
"; + $safe = htmlspecialchars((string)$_POST['input'], ENT_QUOTES, 'UTF-8'); + echo "

Primzahlen von 1 bis {$safe}:

"; + echo "

" . implode(", ", $primeNumbers) . "

"; } } - function isPrime($i) { - if ($i <= 1) return false; - if ($i <= 3) return true; - if ($i % 2 == 0) return false; + function isPrime(int $n): bool { + if ($n <= 1) return false; + if ($n <= 3) return true; + if ($n % 2 === 0) return false; - for ($j = 3; $j * $j <= $i; $j += 2) { - if ($i % $j == 0) { - return false; - } + $limit = (int) floor(sqrt($n)); + for ($d = 3; $d <= $limit; $d += 2) { + if ($n % $d === 0) return false; } return true; @@ -64,12 +60,17 @@ = 0.5 ? 1 : 0; - $starsCount = (int) floor($ln); - $stars = $starsCount > 0 ? str_repeat('*', $starsCount) : '-'; + if ($full === 0 && $half === 0) { + $visual = '-'; + } else { + $visual = str_repeat('*', $full) . ($half ? '+' : ''); + } - echo sprintf("%3d: ln=%6s %s
", $n, $lnFormatted, $stars); + echo str_pad($n, 3, ' ', STR_PAD_LEFT) . ": " . $visual . "
"; } ?>