gmp_prob_prime
(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
gmp_prob_prime — 数が"おそらく素数"であるかどうかを調べる
説明
この関数は、Miller-Rabin の確率的テストを使用して、 その数が素数かどうかを調べます。
パラメータ
戻り値
この関数が 0 を返す場合、num
は確実に素数ではありません。
1 を返す場合、num
は「おそらく」
素数です。2 を返す場合、num
は確実に素数です。
例
例1 gmp_prob_prime() の例
<?php
// 明らかに素数ではありません
echo gmp_prob_prime("6") . "\n";
// おそらく素数です
echo gmp_prob_prime("1111111111111111111") . "\n";
// 明らかに素数です
echo gmp_prob_prime("11") . "\n";
?>
上の例の出力は以下となります。
0 1 2
+add a note
User Contributed Notes 1 note
florin dot ciuica at yahoo dot com ¶
10 years ago
<?php
$max = 2147483647;
$primesFound = 0;
$probablePrimes = 0;
for ($x = 1; $x <= $max; $x++) {
$primeStatus = gmp_prob_prime($x);
if ($primeStatus == 1) {
$probablePrimes++;
} else if ($primeStatus == 2) {
$primesFound++;
}
}
echo "Total primes found: " . $primesFound . " between 1 and " . $max . ". Probable primes in this interval: " . $probablePrimes;
?>
Based on that the following results were obtained:
1 - 100000 - certain primes found: 9592, probable: 0
1 - 1000000 - certain primes found: 78498, probable: 0
1 - 10000000 - certain primes found: 78498, probable: 586081
1 - 100000000 - certain primes found: 78498, probable: 5682957
1 - 1000000000 - certain primes found: 78498, probable: 50769036
1 - 2147483647 - certain primes found: 78498, probable: 105019067
↑ and ↓ to navigate •
Enter to select •
Esc to close
Press Enter without
selection to search using Google