Simplifier et mettre un ratio de 2 ou 3 termes à l’échelle
Ce simplificateur réunit les deux opérations généralement nécessaires. Saisissez deux ou trois nombres positifs ou nuls afin de réduire leur rapport aux plus petits termes entiers.
Lancer gratuitement
Ajoutez un total cible pour obtenir la quantité proportionnelle attribuée à chaque terme. Le résultat présente le ratio initial, sa forme irréductible, le nombre de parts, le multiplicateur et les valeurs redimensionnées. Les entiers, les zéros et les décimales finies sont acceptés, ce qui convient aux recettes, répartitions, mélanges, projets et vérifications scolaires.
Réduisez deux ou trois termes sans modifier leur rapport
Un ratio décrit des parts relatives : multiplier ou diviser chaque terme par une même valeur ne change donc pas leur rapport. Le calculateur commence par convertir chaque nombre en une représentation entière exacte. Cette étape est importante pour des décimales finies telles que 1.5:2.25, car les traiter comme du texte approximatif pourrait donner un résultat peu commode. Il recherche ensuite le plus grand diviseur commun à tous les termes et divise chaque entier par celui-ci. Ainsi, 18:24 devient 3:4 et 6:9:15 devient 2:3:5. Un terme peut être nul, puisque 0:4:8 possède la forme réduite 0:1:2. En revanche, tous les termes ne peuvent pas être nuls : 0:0 ne comporte aucune part positive et ne peut donc pas être mis à l’échelle. La réponse conserve les nombres saisis et fournit le ratio simplifié sous forme de tableau ainsi que sous forme de texte séparé par des deux-points, pour un usage humain ou logiciel.
Adaptez les parts simplifiées à un total exact
Après la réduction, le calculateur additionne les termes simplifiés afin de connaître le nombre total de parts. Il divise le total cible par ce nombre pour obtenir le facteur d’échelle, puis multiplie chaque terme simplifié par ce facteur. Si un budget est réparti selon 2:3:5 pour un total disponible de 1,000, il existe dix parts, chacune vaut 100 et la répartition obtenue est 200, 300 et 500. La méthode fonctionne également lorsque les montants sont fractionnaires. Le ratio 1:2 adapté à un total de 10 donne 3.33333333333 et 6.66666666667 avec une précision numérique stable. Le calcul repose sur les entiers simplifiés, ce qui rend la méthode claire et préserve les proportions voulues. Un total cible nul est autorisé et produit zéro pour chaque terme. Les totaux négatifs sont refusés, car ils ne correspondent pas au modèle de répartition positive ou nulle de cet outil.
Choisissez des entrées valides et lisez les champs renvoyés
Indiquez exactement deux ou trois termes numériques finis. Tout terme négatif provoque une erreur de saisie, tout comme une valeur absente, NaN, l’infini, un ratio entièrement nul ou une liste de longueur incorrecte. Le total cible doit lui aussi être fini et positif ou nul. Dans la réponse, original_ratio reprend les termes acceptés et simplified_ratio contient leur forme entière irréductible. parts_total correspond à la somme des termes simplifiés. scale_factor indique la valeur d’une part pour le total demandé, tandis que scaled_ratio énumère les attributions finales dans l’ordre de saisie. Aucune unité n’est ajoutée : si le total représente des grammes, des euros, des litres, des places ou des heures, toutes les valeurs redimensionnées emploient cette unité. Pour une automatisation, utilisez le tableau numérique plutôt que d’analyser la chaîne avec deux-points, puis appliquez les règles d’arrondi propres à votre domaine.
Cas d’usage
Redimensionner une recette ou un mélange
Réduisez les proportions des ingrédients et calculez la quantité de chaque composant nécessaire pour un nouveau total.
Répartir un budget fixe
Transformez les pondérations des services en parts transparentes correspondant au budget disponible.
Vérifier un exercice sur les ratios
Contrôlez la forme irréductible d’un ratio à deux ou trois nombres et son adaptation à un total donné.
Questions fréquentes
Combien coûte le calcul du ratio ?
L’API coûte $0.002 par requête. Vous pouvez aussi effectuer gratuitement le même calcul déterministe dans votre navigateur.
Puis-je simplifier un ratio à trois termes ?
Oui. Saisissez exactement deux ou trois termes ; ils seront tous réduits ensemble grâce à leur plus grand diviseur commun.
Les termes décimaux sont-ils acceptés ?
Oui. Les décimales finies sont converties en un rapport entier exact avant la réduction.
Un ratio peut-il contenir zéro ?
Un terme peut être nul, mais au moins un terme doit être supérieur à zéro. Un ratio entièrement nul ne peut pas être redimensionné.
Que se passe-t-il si un terme est négatif ?
La requête renvoie une erreur de saisie non valide. Tous les termes doivent être positifs ou nuls.
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/calc2/ratio-simplify \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"terms":[2,3,5],"total":100}'const res = await fetch("https://api.kit.forhosting.com/calc2/ratio-simplify", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"terms": [
2,
3,
5
],
"total": 100
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/calc2/ratio-simplify",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"terms": [
2,
3,
5
],
"total": 100
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/calc2/ratio-simplify", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"terms":[2,3,5],"total":100}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"terms":[2,3,5],"total":100}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/calc2/ratio-simplify", 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
{
"terms": [
2,
3,
5
],
"total": 100
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "calc2.ratio_simplify",
"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.
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. |