Probleme calcul php
Résolu
CyRux
Messages postés
164
Date d'inscription
Statut
Membre
Dernière intervention
-
CyRux Messages postés 164 Date d'inscription Statut Membre Dernière intervention -
CyRux Messages postés 164 Date d'inscription Statut Membre Dernière intervention -
Bonsoir a tous ^^,
Dans le cadre d'un projet pour intégrer du RSA à mon site j'ai besoin de calculer une Exponentiation Modulaire (exemple : a^b%c) mais je n'y arrive pas ...
on va prendre pour exemple
125^103 % 407 qui doit donner 97.
mais quand je fait
quand je fait
.... bref je n'arrive jamais a trouver le bon résultat ... Auriez vous une solution a me proposer ? ;)
Merci d'avance et bonne journée.
--
Dans le cadre d'un projet pour intégrer du RSA à mon site j'ai besoin de calculer une Exponentiation Modulaire (exemple : a^b%c) mais je n'y arrive pas ...
on va prendre pour exemple
125^103 % 407 qui doit donner 97.
mais quand je fait
echo bcmod(125^103, 407);ça m'affiche 26.
quand je fait
echo fmod(pow(125, 103), 407);ça m'affiche 164.
.... bref je n'arrive jamais a trouver le bon résultat ... Auriez vous une solution a me proposer ? ;)
Merci d'avance et bonne journée.
--
A voir également:
- Probleme calcul php
- Calcul moyenne excel - Guide
- Calcul km marche à pied gratuit - Télécharger - Sport
- Easy php - Télécharger - Divers Web & Internet
- Calcul charpente bois gratuit - Télécharger - Architecture & Déco
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
1 réponse
Bonjour
En php, ^ n'est pas l'élévation à la puissance C'est le ou exclusif.
https://www.php.net/manual/fr/language.operators.bitwise.php
Quant à l'utilisation de pow, ça ne peut pas marcher : les calcules sont faits sur un nombre limité de chiffres, alors que pour calculer un modulo, il faut la valeur entière exacte, qui doit faire un peu plus de 200 chiffres - bien au delà de la précision habituellement utilisée en informatique.
Tu peux utiliser la bibliothèque BC pour faire des calculs sur des nombres avec beaucoup de chiffres significatifs :
https://www.php.net/manual/fr/ref.bc.php
mais il y a sûrement un algorithme qui permet d'obtenir la réponse sans avoir besoin de manipuler d'aussi grands nombres.
En php, ^ n'est pas l'élévation à la puissance C'est le ou exclusif.
https://www.php.net/manual/fr/language.operators.bitwise.php
Quant à l'utilisation de pow, ça ne peut pas marcher : les calcules sont faits sur un nombre limité de chiffres, alors que pour calculer un modulo, il faut la valeur entière exacte, qui doit faire un peu plus de 200 chiffres - bien au delà de la précision habituellement utilisée en informatique.
Tu peux utiliser la bibliothèque BC pour faire des calculs sur des nombres avec beaucoup de chiffres significatifs :
https://www.php.net/manual/fr/ref.bc.php
mais il y a sûrement un algorithme qui permet d'obtenir la réponse sans avoir besoin de manipuler d'aussi grands nombres.
donne bien 97 ^^ tout marche nikel ^^
Merci encore et bonne soirée.