Calculateur de PGCD de polynômes
Trouvez le facteur commun à deux polynômes : x² − 3x + 2 et x − 1 ont pour PGCD x − 1, obtenu en 1 étape d'Euclide et toujours ramené à un coefficient dominant égal à 1. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Tout se passe dans votre navigateur : gratuit, sans envoi de vos données.
Ce calculateur de PGCD de polynômes détermine le plus grand commun diviseur de deux polynômes donnés sous forme de tableaux de coefficients denses, du plus haut degré au plus bas. Il applique l'algorithme d'Euclide classique : remplacer la paire par le second polynôme et le reste du premier modulo le second, jusqu'à ce que le reste soit nul, puis mettre à l'échelle le dernier reste non nul pour que son coefficient dominant soit égal à un (un PGCD unitaire). Les facteurs linéaires partagés, les vérifications de division exacte et les tests de primalité entre polynômes se ramènent tous à cette primitive unique. Parmi les vérifications simples que vous connaissez peut-être déjà : x au carré moins trois x plus deux et x moins un partagent le facteur x moins un, et x au carré moins un avec x moins un donne à nouveau x moins un. Le moteur n'utilise qu'une arithmétique en virgule flottante déterministe sur des vecteurs de coefficients : aucun appel réseau, aucun échantillonnage et aucun raccourci dépendant de la date.
Ce que renvoie le PGCD polynomial et comment fonctionne la normalisation unitaire
Le plus grand commun diviseur de deux polynômes est un polynôme de plus haut degré qui divise les deux, unique à un scalaire non nul près sur le corps des coefficients. Ce calculateur renvoie un représentant unitaire : une fois la boucle d'Euclide terminée, chaque coefficient est divisé par le coefficient dominant, si bien que la réponse commence toujours par un lorsque le PGCD est non nul.
Les entrées et sorties utilisent des tableaux de coefficients denses, du plus haut degré en premier ; par exemple un, moins trois, deux représente x au carré moins trois x plus deux, et un, moins un représente x moins un.
La réponse renvoie en écho les entrées normalisées après suppression des zéros de tête, renvoie le tableau gcd unitaire arrondi à la précision demandée, indique les degrés des deux entrées et du PGCD, définit un indicateur coprime lorsque le PGCD unitaire est la constante un, construit des chaînes lisibles telles que x^2 - 3x + 2 pour les fiches d'exercices et les interfaces, et enregistre le nombre d'étapes de reste effectuées par l'algorithme d'Euclide.
Si exactement une entrée est nulle, la forme unitaire de l'autre est renvoyée, conformément à la convention usuelle selon laquelle le PGCD de f et de zéro est un multiple unitaire de f. Il n'existe aucune voie symbolique de type CAS ni aucun tirage aléatoire de racines : le moteur termine les réductions d'Euclide dans les limites de degré et de grandeur prises en charge, ou rejette l'entrée.
Comment les coefficients sont lus et comment la boucle d'Euclide reste reproductible
Les champs privilégiés sont a et b, chacun un tableau non vide de nombres finis, du plus haut degré jusqu'au terme constant. Les coefficients sous forme de chaînes qui s'interprètent comme des nombres décimaux finis, y compris avec une notation scientifique optionnelle, sont autorisés ; les espaces incrustés, les préfixes hexadécimaux et les jetons non numériques sont rejetés avec un message clair, pour qu'une mauvaise cellule ne se transforme pas en mauvais diviseur.
Les coefficients nuls en tête sont supprimés avant la réduction, si bien que zéro, un, deux et un, deux représentent le même polynôme linéaire. Chaque étape d'Euclide calcule le reste du dividende courant modulo le diviseur courant par division euclidienne des vecteurs de coefficients, puis permute : l'ancien diviseur devient le nouveau dividende et le reste devient le nouveau diviseur, exactement comme pour le PGCD entier. Un petit epsilon supprime les termes dominants proches de zéro, afin que le bruit numérique n'invente pas de faux restes de haut degré.
Une fois la boucle terminée, la mise à l'échelle unitaire force le coefficient dominant à un, ce qui rend les goldens et les caches indépendants des multiples scalaires arbitraires que l'algèbre autorise.
Où le PGCD polynomial intervient dans les études, le code et l'enseignement
Les élèves rencontrent le PGCD polynomial lorsqu'un manuel introduit l'algorithme d'Euclide sur l'anneau des polynômes, lorsqu'ils simplifient des facteurs communs dans une expression rationnelle, ou lorsqu'ils vérifient si deux cubiques partagent un facteur linéaire avant d'appliquer une décomposition en fractions partielles. Les enseignants peuvent pré-générer des corrigés pour des degrés modestes sans se fier à des applications de calcul opaques qui cachent les restes intermédiaires ou remettent silencieusement à l'échelle avec des contenus non unitaires.
Les développeurs appellent le même contrat depuis des scripts pour amorcer des vecteurs de test déterministes destinés à des modules de calcul formel, pour simplifier des rapports de polynômes saisis par l'utilisateur, ou pour satisfaire des énoncés de défis de programmation qui exigent un tableau de PGCD unitaire plutôt qu'une liste de facteurs approximative. La pratique des concours a souvent besoin d'une source rapide et hors ligne de résultats de PGCD polynomial, afin que les solutions puissent être vérifiées sans calculatrice graphique, sous la pression du temps.
Associez-le à la division polynomiale lorsque vous avez besoin de quotients en plus des restes, aux outils de PGCD entier lorsque les objets sont des nombres plutôt que des polynômes, et aux autres points de terminaison d'algèbre lorsque vous construisez un petit laboratoire d'outils gratuits et déterministes pour les devoirs et les tests logiciels.
Cas d’usage
Devoirs et vérifications de facteurs communs
Trouvez des PGCD polynomiaux unitaires pour des exercices de manuel sur l'algorithme d'Euclide et simplifiez des facteurs communs dans des expressions rationnelles.
Données de référence déterministes pour les tests
Générez des tableaux de coefficients de PGCD unitaire et des chaînes polynomiales reproductibles pour les tests unitaires, les vérifications de propriétés et les assertions d'intégration continue.
Soutien scolaire et interfaces de calcul formel
Normalisez deux polynômes saisis par l'utilisateur en un PGCD unitaire avec les degrés, l'indicateur coprime et des chaînes polynomiales lisibles pour les leçons.
Questions fréquentes
Combien coûte le calculateur de PGCD de polynômes ?
Il est gratuit dans votre navigateur sur cette page.
Comment le PGCD est-il défini ?
C'est un polynôme unitaire de plus haut degré qui divise les deux entrées, obtenu par l'algorithme d'Euclide (restes polynomiaux répétés) et une normalisation du coefficient dominant.
Comment dois-je encoder les polynômes ?
Transmettez des tableaux de coefficients denses, du plus haut degré en premier, par exemple [1, -3, 2] pour x² − 3x + 2 et [1, -1] pour x − 1.
Que signifie l'indicateur coprime ?
Lorsque le PGCD unitaire est la constante 1, les polynômes ne partagent aucun facteur racine de degré positif et coprime vaut true.
Que se passe-t-il si l'un des polynômes est nul ?
Vous obtenez l'autre polynôme, ramené à un coefficient dominant égal à 1, car tout polynôme divise zéro. Si les deux sont nuls, le calcul est refusé, puisque leur PGCD n'est pas défini.
Outils associés
Pour les développeurs — accès API
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.
Endpoint
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é.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/algebra/polynomial-gcd \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":[1,-3,2],"b":[1,-1]}'const res = await fetch("https://api.kit.forhosting.com/algebra/polynomial-gcd", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": [
1,
-3,
2
],
"b": [
1,
-1
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/algebra/polynomial-gcd",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": [
1,
-3,
2
],
"b": [
1,
-1
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/algebra/polynomial-gcd", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":[1,-3,2],"b":[1,-1]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":[1,-3,2],"b":[1,-1]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/algebra/polynomial-gcd", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"a": [
1,
-3,
2
],
"b": [
1,
-1
]
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "algebra.polynomial_gcd",
"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.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Limites
max_degree | 64 |
max_abs_coeff | 1000000000000000 |
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Utilisez-le gratuitement dans le navigateur pour vos devoirs, votre préparation aux concours et vos katas de programmation, ou appelez l'API à $0.002 par requête réussie lorsque vous avez besoin de données de référence de PGCD polynomial reproductibles en intégration continue, dans un logiciel de soutien scolaire ou des démonstrations pédagogiques.
Ce que renvoie le PGCD polynomial et comment fonctionne la normalisation unitaire
Le degré d'un polynôme non nul est égal à la longueur de son tableau de coefficients réduit, moins un ; le polynôme nul est signalé avec un degré de zéro et le coefficient unique zéro, afin que les consommateurs de JSON n'aient jamais besoin de tableaux vides. Le cas où les deux polynômes sont nuls est rejeté avec invalid_input, car le PGCD de zéro et zéro n'est pas défini dans ce contrat. Si vous avez besoin d'une division euclidienne complète avec quotient et reste exposés, d'une factorisation en facteurs irréductibles, ou du PGCD de nombres entiers plutôt que de polynômes, utilisez les outils dédiés à cela ; cette page ne répond qu'au PGCD unitaire de polynômes par restes d'Euclide, avec des coefficients numériques stables adaptés aux tests unitaires et aux clients de l'API.
Comment les coefficients sont lus et comment la boucle d'Euclide reste reproductible
Les alias p, poly1, f et first pour le premier polynôme, et q, poly2, g et second pour le second, sont acceptés, afin que les feuilles de calcul, les chaînes de requête et les formulaires typés puissent réutiliser le même contrat. Un champ precision optionnel, avec les alias decimals et dp, choisit le nombre de décimales à exposer pour chaque coefficient de la réponse, avec une valeur par défaut de dix et un plafond de quinze, afin que les goldens JSON restent stables d'une exécution à l'autre. Associez l'exécution gratuite dans le navigateur sur cette page à l'API payante lorsque vous avez besoin du même résultat mathématique au sein d'un pipeline automatisé.
Où le PGCD polynomial intervient dans les études, le code et l'enseignement
Les produits pédagogiques utilisent cette réécriture lorsqu'un apprenant saisit deux listes de coefficients et que l'interface doit afficher ensemble a_poly, b_poly et gcd_poly, avec l'indicateur coprime et le nombre d'étapes d'Euclide. Sur cette page, le travail s'exécute entièrement dans votre navigateur ; via l'API, chaque recherche réussie coûte $0.002, la validation échouée n'est pas facturée, et rien n'est conservé après le renvoi de la réponse. Cette séparation — exploration interactive gratuite et API payante identique — correspond au reste du catalogue de niveau A de KIT, et vous permet de passer d'une démonstration en classe à un pipeline automatisé sans changer le résultat mathématique.
Questions techniques
Que se passe-t-il si les deux polynômes sont nuls ?
L'entrée est rejetée avec invalid_input. gcd(0, 0) n'est pas défini dans ce contrat.