Calculateur de développement du coefficient multinomial
Ce calculateur de développement du coefficient multinomial dénombre les arrangements distincts obtenus lorsque des objets différents sont répartis dans des groupes étiquetés de tailles fixées.
Lancer gratuitement
Indiquez le nombre total d’objets et la taille de chaque groupe. Le calculateur vérifie que ces tailles correspondent au total déclaré, puis évalue exactement le coefficient. Le résultat étant fourni sous forme de chaîne décimale, les valeurs dépassant la plage des entiers sûrs restent complètes et sans arrondi. Cet outil convient aux exercices de combinatoire, aux arrangements de symboles répétés, aux formules de probabilité et aux tests logiciels nécessitant un décompte fiable des partitions.
Comprenez ce que dénombre le coefficient
Un coefficient multinomial généralise la notion familière de choix d’un sous-ensemble. Au lieu de séparer une collection entre une partie choisie et le reste, il répartit tous les objets distincts dans plusieurs groupes étiquetés dont les tailles sont fixées à l’avance. Pour un total n et des tailles n1, n2, puis les suivantes, le coefficient vaut la factorielle de n divisée par le produit des factorielles de chaque taille. Les étiquettes comptent : affecter trois personnes au matin, trois à l’après-midi et deux au soir ne revient pas à former des ensembles sans nom. L’ordre au sein d’un groupe est sans effet, car permuter deux membres de ce même groupe ne change pas l’affectation. La même expression compte aussi les développements distincts d’un arrangement de multiensemble. Pour ranger des lettres répétées, par exemple, une taille correspond à chaque symbole répété. Le résultat est toujours un entier positif ou nul. Un groupe vide est autorisé et apporte une factorielle égale à un, tandis qu’un groupe unique contenant tout le total donne un coefficient égal à un. Cette capacité renvoie la valeur exacte plutôt qu’une approximation et convient donc aux comparaisons, aux corrections et aux calculs exacts ultérieurs.
Fournissez un total et la liste complète des tailles
Envoyez un objet contenant total et group_sizes. Le total doit être un entier positif ou nul ne dépassant pas dix mille. group_sizes doit être un tableau non vide d’entiers positifs ou nuls. Surtout, chaque taille doit appartenir à la même partition complète : la somme des entrées doit être strictement égale à total. Avec un total de huit et les tailles trois, trois et deux, la réponse contient le coefficient 560. Huit objets distincts peuvent donc être affectés à trois groupes étiquetés de ces tailles de 560 façons. La réponse reprend group_sizes après validation afin que vous puissiez rattacher le résultat à la bonne partition. Le coefficient est une chaîne décimale et non un nombre JSON, car les résultats combinatoires exacts dépassent rapidement le plus grand entier que JavaScript représente sans perte. Manipulez cette chaîne comme un entier dans un langage à précision arbitraire, ou conservez-la comme texte pour l’affichage et le stockage. Une requête API réussie coûte $0.002. Les erreurs de validation sont signalées comme entrées invalides sans correction silencieuse ; une faute de saisie ne peut donc pas produire une réponse crédible pour un autre problème mathématique.
Interprétez la validation et préservez l’exactitude
Le contrôle de la somme fait partie du contrat mathématique et ne constitue pas un simple agrément. Si total vaut dix mais que les tailles donnent neuf, un objet reste sans destination et la partition demandée est incomplète. Si elles donnent onze, elles exigent davantage d’objets qu’il n’en existe. Dans les deux cas, la capacité refuse la requête et indique la somme reçue ainsi que le total déclaré. Elle refuse également les fractions, les valeurs négatives, les champs absents, une liste vide et les totaux supérieurs à la limite publiée. L’implémentation évalue l’expression comme un produit de coefficients binomiaux exacts plutôt que de construire plusieurs factorielles gigantesques avant de les diviser. Elle choisit d’abord les membres du premier groupe, puis le groupe suivant parmi les objets restants, jusqu’à épuisement. Chaque division est exacte et l’arithmétique BigInt empêche les arrondis. Les résultats restent ainsi stables entre les appels, les navigateurs et le serveur. Pour une probabilité multinomiale, convertissez le coefficient avec une bibliothèque à précision arbitraire avant de l’associer aux puissances des probabilités. Pour un simple dénombrement, conservez la chaîne décimale intacte afin de ne perdre aucun chiffre dans JSON, un tableur ou une base de données.
Cas d’usage
Dénombrer les arrangements de symboles répétés
Utilisez la fréquence de chaque symbole comme taille de groupe afin d’obtenir les suites distinctes sans compter plusieurs fois les copies identiques.
Construire des calculs de probabilité
Calculez le facteur combinatoire exact d’une masse de probabilité multinomiale avant d’appliquer les probabilités des catégories.
Vérifier des exercices de combinatoire
Comparez un développement ou un décompte de partitions manuel à un résultat exact et repérez les listes de tailles incomplètes.
Questions fréquentes
À quelle valeur les tailles des groupes doivent-elles s’additionner ?
Elles doivent être strictement égales à total. Une somme inférieure ou supérieure est refusée, car elle ne décrit pas une partition complète des objets.
Pourquoi le coefficient est-il renvoyé sous forme de chaîne ?
Les coefficients multinomiaux dépassent vite la plage des entiers sûrs. Une chaîne décimale garde chaque chiffre sans arrondi JSON.
La taille d’un groupe peut-elle être nulle ?
Oui. Zéro est une taille valide positive ou nulle et n’ajoute aucun objet ; sa factorielle vaut un.
Les groupes sont-ils étiquetés ?
Oui. La formule compte les affectations à des positions ou catégories distinctes et ne fusionne pas celles qui échangent des groupes entiers.
Quel est le prix d’une requête API ?
Une requête API réussie coûte $0.002. Le calcul est également déterministe et ne dépend ni du réseau ni d’un modèle.
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/multinomial-coefficient \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"total":8,"group_sizes":[3,3,2]}'const res = await fetch("https://api.kit.forhosting.com/algebra/multinomial-coefficient", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"total": 8,
"group_sizes": [
3,
3,
2
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/algebra/multinomial-coefficient",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"total": 8,
"group_sizes": [
3,
3,
2
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/algebra/multinomial-coefficient", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"total":8,"group_sizes":[3,3,2]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"total":8,"group_sizes":[3,3,2]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/algebra/multinomial-coefficient", 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
{
"total": 8,
"group_sizes": [
3,
3,
2
]
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "algebra.multinomial_coefficient",
"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_total | 10000 |
max_groups | 10000 |
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. |