<?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: 105019067gmp_prob_prime
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
gmp_prob_prime
Референца за `function.gmp-prob-prime.php` со подобрена типографија и навигација.
gmp_prob_prime
(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)
gmp_prob_prime — Провери дали бројот е „веројатно прост“
= NULL
Функцијата користи Милер-Рабинов тест за веројатност за да провери дали еден број е прост.
Параметри
num-
Бројот што се проверува како прост.
А GMP објект, еден int, или string што може да се толкува како број следејќи ја истата логика како да се користел стринг во gmp_init() со автоматско откривање на база (т.е. когаbaseе еднакво на 0). repetitions-
Разумни вредности на
А GMP објект, еден int, или string што може да се толкува како број следејќи ја истата логика како да се користел стринг во gmp_init() со автоматско откривање на база (т.е. когаrepetitionsсе движат од 5 до 10 (стандардно 10); повисока вредност ја намалува веројатноста за не-прост број да помине како „веројатно“ прост.baseе еднакво на 0).
Вратени вредности
Ако оваа функција врати 0, num дефинитивно не е прост. Ако врати 1, тогаш
num е „веројатно“ прост. Ако врати 2, тогаш num сигурно е прост.
Примери
Пример #1 gmp_prob_prime() example
<?php
// definitely not a prime
echo gmp_prob_prime("6") . "\n";
// probably a prime
echo gmp_prob_prime("1111111111111111111") . "\n";
// definitely a prime
echo gmp_prob_prime("11") . "\n";
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
0 1 2