Résoudre une équation quadratique
Saisissez a, b et c et obtenez les deux racines avec le discriminant : x² − 3x + 2 = 0 a un discriminant de 1 et pour racines 2 et 1. Un discriminant négatif donne une paire complexe, et chaque racine s'affiche avec six décimales. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Coefficient A
- 1
- Coefficient B
- -3
- Coefficient C
- 2
- Discriminant
- 1
- Nature des racines
- two_real
gratuit dans le navigateur
Comment la formule trouve les racines
Toute équation du second degré peut s'écrire a fois x au carré, plus b fois x, plus c, égal à zéro. Le solveur calcule d'abord le discriminant, b au carré moins quatre fois a fois c, en arithmétique entière exacte. Il applique ensuite la formule classique : moins b, plus ou moins la racine carrée du discriminant, le tout divisé par deux fois a. Prenons x² − 3x + 2 = 0. Ici a vaut 1, b vaut −3 et c vaut 2 : le discriminant est 9 moins 8, soit 1. Sa racine carrée vaut 1, et les deux racines sont 4 divisé par 2 et 2 divisé par 2, c'est-à-dire 2 et 1.
Lire le résultat et éviter les erreurs courantes
Quand le discriminant est négatif, il n'existe pas de solution réelle, et les deux racines s'affichent avec une partie réelle et une partie imaginaire qui se répondent : une paire conjuguée. L'erreur la plus fréquente à la main concerne le signe de b : dans x² − 3x + 2, b vaut −3 et non 3, et la formule commence par moins b. Une autre consiste à oublier que deux fois a divise tout le numérateur. Les coefficients doivent être des entiers ne dépassant pas un million en valeur absolue, et le premier ne peut pas être nul. Chaque racine est arrondie à six décimales, les demis étant éloignés de zéro. Les équations de degré supérieur ne sont pas traitées ici.
Racines half-up sans bruit Math.sqrt
Les racines réelles utilisent la formule classique x égal moins b plus ou moins la racine de D, le tout divisé par deux a. La racine s'obtient via isqrt entier de n fois S au carré, où S vaut un million, puis un arrondi half-up à six décimales. La division utilise un half-up symétrique qui éloigne les moitiés de zéro.
Les racines complexes appliquent le même chemin mis à l'échelle à la valeur absolue de D pour que les parties imaginaires restent conjuguées même si a est négatif. Comme chaque étape est entière, deux oracles indépendants suivant les règles signées produisent les mêmes chaînes sur tous les vecteurs.
Ordre des racines et limites pratiques
x1 est toujours la branche plus et x2 la branche moins de la formule quadratique. Pour les solutions complexes la partie imaginaire de x1 porte le signe issu de la division de la racine mise à l'échelle par deux a, et x2 inverse ce signe imaginaire. La sortie n'appelle pas le réseau, ne lit pas l'horloge système et ne dépend pas de la locale.
La version un omet volontairement les coefficients non entiers, la factorisation symbolique et les polynômes de degré supérieur pour garder un contrat court et auditable.
Cas d’usage
Devoirs
Vérifier les racines de quadratiques moniques et non moniques.
Nombres complexes
Montrer les paires conjuguées quand D est négatif.
Tests de pipeline
Figer des chaînes à six décimales en intégration continue.
Modèles simples
Résoudre des équations caractéristiques à coefficients entiers.
Questions fréquentes
Les décimales sont-elles admises ?
Pas en v1. Seulement des entiers ou chaînes entières.
Utilise-t-il Math.sqrt flottant ?
Non. L'oracle est isqrt entier plus half-up mis à l'échelle.
Que m'apprend le discriminant ?
Le discriminant vaut b au carré moins quatre fois a fois c. S'il est positif, il y a deux racines réelles distinctes ; s'il est nul, une racine double ; s'il est négatif, les racines forment une paire de complexes conjugués.
Quelle racine est x1 et laquelle est x2 ?
La première racine utilise toujours le signe plus devant la racine carrée de la formule, et la seconde le signe moins. Pour x² − 3x + 2 = 0, on obtient donc d'abord 2, puis 1.
Que se passe-t-il si a vaut zéro ?
L'équation est refusée, car sans le terme au carré elle n'est plus du second degré mais linéaire. Le premier coefficient doit être un entier différent de zéro.
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/dev/quadratic-equation \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"a":1,"b":-3,"c":2}'const res = await fetch("https://api.kit.forhosting.com/dev/quadratic-equation", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"a": 1,
"b": -3,
"c": 2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/quadratic-equation",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"a": 1,
"b": -3,
"c": 2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/quadratic-equation", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"a":1,"b":-3,"c":2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"a":1,"b":-3,"c":2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/quadratic-equation", 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,
"b": -3,
"c": 2
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.quadratic_equation",
"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_abs_coeff | 1000000 |
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
Saisissez les coefficients entiers a, b et c de l'équation ax² + bx + c = 0 et obtenez le discriminant, la nature des racines et les deux solutions sous forme de paires réelles ou complexes.
Uniquement des coefficients entiers en version un
Les valeurs absolues au-delà d'un million sont aussi rejetées pour borner le chemin entier. Ce solveur accepte a, b et c comme entiers JSON ou comme chaînes entières canoniques avec un signe moins optionnel. Les flottants, booléens, points décimaux, le plus initial et les zéros de tête comme 01 sont rejetés avec invalid_input typé sur le champ fautif. Le coefficient a ne peut pas être zéro ; ce cas est signalé comme a_zero car l'équation ne serait plus quadratique.
Discriminant exact et trois natures
Vous recevez toujours deux objets racine x1 et x2, chacun avec une partie réelle re et une partie imaginaire im formatées en chaînes à exactement six décimales. Cette forme fixe facilite l'affichage dans des tableaux, widgets et pipelines sans cas particuliers pour des champs absents. Le discriminant D vaut b au carré moins quatre a c et se calcule en arithmétique entière exacte, jamais en virgule flottante IEEE. Si D est positif la nature est two_real, s'il est nul c'est repeated et s'il est négatif c'est complex.
Questions techniques
a peut-il être zéro ?
Non. a_zero est renvoyé car ce ne serait plus quadratique.
Quelle précision pour les racines ?
Toujours six décimales avec arrondi half-up.
Qu'est-ce que nature ?
two_real, repeated ou complex selon le signe de D.
Gratuit dans le navigateur ?
Oui. Le widget est local ; l'API utilise $0.002.