ForHosting KIT · Mathématiques

Division modulaire

Divisez en arithmétique modulaire : 8 divisé par 3 modulo 11 donne 10, car l'inverse de 3 est 4 et 3 fois 10 laisse le reste 8. Vous obtenez aussi l'inverse, le pgcd et une valeur de contrôle. Gratuit dans votre navigateur.

  • Gratuit
  • Fonctionne dans votre navigateur
  • Sans inscription
  • Vos données restent sur votre appareil
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt
Si vous saisissez
A
8
B
3
N
11
Vous obtenez
A modulo
8
B modulo
3
Inverse
4
Quotient
10

La division modulaire cherche un résidu q tel que b multiplié par q soit congruent à a modulo n. En arithmétique ordinaire vous divisez simplement ; en arithmétique modulaire la division est une multiplication par l'inverse modulaire du diviseur. Cet inverse n'existe que lorsque b et n sont premiers entre eux. Les laboratoires de cryptographie, la programmation de concours, les devoirs sur les corps finis et les exercices de congruences linéaires ont besoin de cette opération, pourtant de nombreux langages n'exposent qu'un GCD ou un inverse modulaire nu et vous laissent le pas de multiplication. Ce calculateur prend les entiers a, b et le module n, inverse b modulo n avec l'algorithme d'Euclide étendu lorsque c'est possible, multiplie par a et renvoie l'unique quotient non négatif entre zéro et n moins un, avec l'inverse, le gcd et un produit de vérification pour que vous puissiez contrôler le résultat sans refaire les étapes.

Ce que signifie la division modulaire et quand elle est définie

Dans les entiers tout nombre non nul a un réciproque dans les rationnels, de sorte que la division est toujours définie hors du zéro. Modulo n le cadre est plus strict : les résidus forment un anneau et seules les unités—éléments possédant un inverse multiplicatif—peuvent servir de diviseurs légaux. On dit que q est un quotient modulaire de a divisé par b modulo n lorsque b multiplié par q laisse le même reste que a quand les deux produits sont réduits modulo n.

De façon équivalente, q est congruent à a multiplié par l'inverse de b modulo n. L'inverse de b existe si et seulement si le gcd de b et n vaut un ; sinon tout multiple de b partage un facteur avec n et ne peut atteindre toutes les classes de résidus, de sorte qu'aucun q unique ne convient pour un a arbitraire.

Ingénieurs et étudiants rencontrent cette barrière lorsqu'ils divisent dans un module composite qui n'est pas un corps premier, lorsqu'ils annulent un coefficient dans une congruence linéaire ou lorsqu'ils défont une multiplication modulaire dans une étape de hachage ou de chiffrement. Notez que a lui-même n'a pas besoin d'être premier avec n ; seul le diviseur b doit être une unité. Cette asymétrie s'oublie facilement si l'on ne retient que le cas particulier de l'inverse modulaire avec a égal à un.

Usage pratique, limites, tarifs et livraison

Utilisez l'outil du navigateur lorsque vous voulez un quotient modulaire rapide en lisant une note de théorie des nombres, en vérifiant un devoir de la forme b x congruent à a mod n, ou en déboguant un pipeline modulaire qui multiplie déjà par des inverses à la main. Les entrées acceptées sont des entiers a et b de valeur absolue au plus un billion et des modules n de deux à un billion. Les résultats sont déterministes : le même triplet produit toujours les mêmes champs quotient, inverse et check.

Branchez le point de terminaison sur des aides de concours, des démos de corps finis, des bacs à sable d'enseignement RSA qui demandent plus que de simples inverses, ou tout pipeline entier qui préfère l'arithmétique exacte aux heuristiques en virgule flottante. Si vous n'avez besoin que de l'inverse de b sans multiplier par a, préférez la capacité dédiée d'inverse modulaire ; cette page cible l'intention complète de division que l'on cherche comme division modulaire ou a divisé par b mod n.

Labs de crypto et corps finis

Enseignants et étudiants peuvent diviser des éléments de corps modulo un premier, ou inspecter le gcd lorsqu'un module composite d'exemple rend le diviseur non inversible.

Correcteurs de devoirs et congruences linéaires

Des correcteurs automatiques peuvent vérifier les solutions de b x ≡ a (mod n) en comparant le quotient renvoyé et rejeter les cas où aucune classe de résidu unique n'existe.

Que se passe-t-il si b n'est pas inversible modulo n ?

Le message inclut gcd(b, n) pour que vous sachiez pourquoi la division modulaire est indéfinie. L'échec de validation n'est pas facturé.

Comment le quotient est-il calculé ?

L'algorithme d'Euclide étendu trouve b⁻¹ mod n lorsque gcd(b, n) = 1 ; le calculateur multiplie ensuite cet inverse par a modulo n avec une arithmétique entière exacte.

Le calculateur de division modulaire est-il gratuit ?

L'outil du navigateur s'exécute gratuitement sur votre appareil.

Quelles plages de a, b et n sont acceptées ?

n doit être un entier de 2 à 1,000,000,000,000. a et b doivent être des entiers dont la valeur absolue est au plus cette même borne. Les valeurs hors de ces limites sont rejetées.

Combien fait 8 divisé par 3 modulo 11 ?

Le résultat est 10. L'inverse de 3 modulo 11 est 4, et multiplier 8 par cet inverse donne le quotient 10. Pour contrôler, 3 fois 10 laisse le reste 8 dans la division par 11.

Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.

POSThttps://api.kit.forhosting.com/numth/modular-division

Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.

curl -X POST https://api.kit.forhosting.com/numth/modular-division \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"a":8,"b":3,"n":11}'
{
  "a": 8,
  "b": 3,
  "n": 11
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.modular_division",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Ce que signifie la division modulaire et quand elle est définie

Renvoyer une erreur invalid_input explicite lorsque b n'est pas inversible est plus utile qu'un résidu silencieux et faux : le client apprend que la division est indéfinie pour ce couple et peut brancher sur le gcd signalé au lieu de faire confiance à une bibliothèque approximative.

Comment ce calculateur inverse b et multiplie par a

Appelez la capacité avec les champs entiers a, b et n, où n vaut au moins deux. L'implémentation réduit d'abord a et b en résidus non négatifs a_mod et b_mod dans l'intervalle de zéro à n moins un, puis applique l'algorithme d'Euclide étendu à b_mod et n. Chaque étape enregistre le quotient entier et met à jour les coefficients de Bézout de sorte qu'à la fin le coefficient de b_mod multiplie b_mod plus un coefficient de n égale le gcd. Si ce gcd n'est pas un, la requête échoue avec invalid_input et un message qui nomme b, n et le gcd ; rien n'est facturé. Si le gcd vaut un, le coefficient de b_mod est réduit dans zéro à n moins un et stocké comme inverse. Le produit modulaire de a_mod et inverse est ensuite pris avec une arithmétique BigInt exacte afin que de grands résidus restent corrects jusqu'à la borne publiée, et le produit est renvoyé comme quotient. La réponse reprend aussi a, b, n, a_mod, b_mod, gcd et check égal à b_mod multiplié par quotient modulo n, qui doit égaler a_mod lorsque l'appel réussit. Les valeurs absolues de a et b, et le module n, sont bornées par un billion afin que tout intermédiaire reste dans un régime d'entiers sûrs du Worker.

Usage pratique, limites, tarifs et livraison

Utilisez l'API lorsqu'un script, un correcteur ou une plateforme éducative a besoin de nombreuses divisions sans embarquer une routine de GCD étendu et une étape multiply-mod soignée. Chaque requête réussie est un élément facturable à $0.002 ; les échecs de validation et les diviseurs non inversibles ne consomment pas de solde. Comme l'unité est un seul élément et que le moteur est purement parse, la latence reste faible et le canal web gratuit reflète l'API payante sans un second chemin de code qui pourrait diverger.

Programmation de concours et arithmétique modulaire

Les programmeurs de concours peuvent calculer a/b mod n sous des modules premiers ou composites et détecter les diviseurs non inversibles via invalid_input au lieu de fragments ad hoc de GCD étendu.

Comment calculer la division modulaire a ÷ b mod n ?

Envoyez un JSON avec les champs entiers a, b et n (n ≥ 2) à numth.modular_division. En cas de succès la réponse renvoie quotient dans 0..n−1, plus l'inverse de b, a_mod, b_mod, gcd et check égal à a_mod.

Consulter la documentation complète du KIT →