PHP Conference Nagoya 2025

gmp_nextprime

(PHP 5 >= 5.2.0, PHP 7, PHP 8)

gmp_nextprimeEncontra o próximo número primo

Descrição

gmp_nextprime(GMP|int|string $num): GMP

Encontra o próximo número primo

Parâmetros

num

Um objeto GMP, um int ou uma string que possa ser interpretado como um número seguindo a mesma lógica como se a string fosse usada em gmp_init() com detecção automática de base (ou seja, quando base é igual a 0).

Valor Retornado

Retorna o próximo número primo maior que num, como um número GMP.

Exemplos

Exemplo #1 Exemplo de gmp_nextprime()

<?php
$prime1
= gmp_nextprime(10); // o próximo número primo maior que 10
$prime2 = gmp_nextprime(-1000); // o próximo número primo maior que -1000

echo gmp_strval($prime1) . "\n";
echo
gmp_strval($prime2) . "\n";
?>

O exemplo acima produzirá:

11
2

Notas

Nota:

Esta função usa um algoritmo probabilístico para identificar primos e as chances de se obter um número composto é extremamente pequena.

adicione uma nota

Notas Enviadas por Usuários (em inglês) 3 notes

up
4
Tommy Lynge Jrgensen
8 years ago
Prime numbers are positive, non-zero numbers that have exactly two factors. No more, no less. So testing negative numbers doesn't really make any sense.
up
3
IceMetalPunk at gmail dot com
7 years ago
Negative numbers N always have at least four factors: N*1=N and abs(N)*-1=N. Therefore, even if "natural number" weren't in the definition of a prime (which it is), no negative number would ever qualify. Therefore, the next-largest prime number to any negative number is always 2.
up
-1
Anonymous
8 years ago
It seems gmp_nextprime on negative numbers always returns 2.
To Top