prime_factorization.php
von paedubucher- SNIPPET_DESC:
- Primzahlenfaktorisierung in PHP
- SNIPPET_CREATION_TIME:
- 05.12.2023 06:57:50
- SNIPPET_PRUNE_TIME:
- Unendlich
- SNIPPET_TEXT:
-
- <?php
- function factorize_range($a, $b) {
- if ($a > $b) {
- return $factors;
- }
- for ($i = $a; $i <= $b; $i++) {
- $factors[$i] = factorize($i);
- }
- return $factors;
- }
- function factorize($x) {
- for ($i = 0; $x > 1 && $i < $n;) {
- $prime = $primes[$i];
- if ($x % $prime == 0) {
- $factors[] = $prime;
- $x /= $prime;
- } else {
- $i++;
- }
- }
- if ($x > 1) {
- $factors[] = $x;
- }
- return $factors;
- }
- function primes_up_to($n) {
- if ($n < 2) {
- return $primes;
- }
- for ($i = 2; $i <= $n; $i++) {
- if (is_prime($i)) {
- $primes[] = $i;
- }
- }
- return $primes;
- }
- function is_prime($x) {
- for ($i = 2; $i <= $x / 2; $i++) {
- if ($x % $i == 0) {
- return false;
- }
- }
- return true;
- }
- }
- $result = factorize_range($_GET["lower"], $_GET["upper"]);
- foreach ($result as $n => $fs) {
- echo("{$n}:\t");
- foreach ($fs as $f) {
- echo("{$f} ");
- }
- echo("\n");
- }
- ?>
Quellcode
Hier kannst du den Code kopieren und ihn in deinen bevorzugten Editor einfügen. PASTEBIN_DOWNLOAD_SNIPPET_EXPLAIN