PHP 8.4.2 Released!

gmp_invert

(PHP 4 >= 4.0.4, PHP 5, PHP 7, PHP 8)

gmp_invertModulo inversé

Description

gmp_invert(GMP|int|string $num1, GMP|int|string $num2): GMP|false

Calcule l'inverse de num1 modulo num2.

Liste de paramètres

num1

Un objet GMP, un entier, ou un chaîne de caractères qui peut être interprété comme un nombre suivant la même logique que si la chaîne était utilisée dans gmp_init() avec détection automatique de la base (c'est-à-dire lorsque base est égal à 0).

num2

Un objet GMP, un entier, ou un chaîne de caractères qui peut être interprété comme un nombre suivant la même logique que si la chaîne était utilisée dans gmp_init() avec détection automatique de la base (c'est-à-dire lorsque base est égal à 0).

Valeurs de retour

Un nombre GMP en cas de succès, ou false si l'inverse n'existe pas.

Exemples

Exemple #1 Exemple avec gmp_invert()

<?php
echo gmp_invert("5", "10"); // pas d'inverse, n'affiche rien, le résultat est FALSE
$invert = gmp_invert("5", "11");
echo
gmp_strval($invert) . "\n";
?>

L'exemple ci-dessus va afficher :

9

add a note

User Contributed Notes 1 note

up
2
athamidn at gmail dot com
4 years ago
Example #2 gmp_invert() example
<?php
echo gmp_invert("5", "10"); // no inverse, outputs nothing, result is FALSE

It means (5 * x ) mod 10 = 1. And with this function we want a value for x, because of mod 10, x should be {1.. 10-1(9)}, so :

5 * 1 mod 10 = 5
5
* 2 mod 10 = 0
5
* 3 mod 10 = 5
5
* 4 mod 10 = 0
5
* 5 mod 10 = 5
5
* 6 mod 10 = 0
5
* 7 mod 10 = 5
5
* 8 mod 10 = 0
5
* 9 mod 10 = 5
We don
't have any 1 in the results. so it will be False.

$invert = gmp_invert("5", "11");

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

The above example will output:

9

5 * 9 mod 11 = 1
To Top