Pourcentages de camembert
Les valeurs 1, 1 et 2 totalisent 4 : elles occupent donc un quart, un quart et la moitié du camembert. Collez les valeurs de chaque catégorie et obtenez des parts qui totalisent toujours exactement 100, jamais 99,99. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Valeurs
- 1, 1, 2
- Total
- 4
- N
- 3
- Pourcentages
- 25, 25, 50
- Actions
- 0,25, 0,25, 0,5
Un camembert n'est honnête que lorsque chaque part est un pourcentage d'un même total partagé et que ces pourcentages s'additionnent exactement à cent. Ce calculateur de pourcentages de camembert accepte une liste de valeurs de catégorie — ventes régionales, dépouillements d'enquête, lignes budgétaires, décomptes de voix ou tout poids non négatif —, les additionne une fois, puis convertit chaque entrée en cent fois cette valeur divisée par le total. La dernière part non nulle absorbe le résidu microscopique d'arrondi afin que les pourcentages renvoyés totalisent toujours 100 au lieu de 99.99 ou 100.01.
Ce qu'est un pourcentage de camembert et pourquoi les parts doivent totaliser 100
Un camembert encode une composition : chaque part est la quote-part d'une catégorie dans un tout, et ce tout est la somme des valeurs de catégorie que vous avez fournies. Le pourcentage de la catégorie i vaut cent fois cette valeur divisée par la somme de toutes les valeurs. Cette identité reste la même que les chiffres bruts soient des effectifs, des montants, des minutes ou des poids sans unité, car les unités s'annulent dans le rapport.
On recourt à cette conversion lorsqu'on dispose déjà d'une colonne de montants et qu'il faut les libellés du camembert, de la légende ou de la barre empilée jumelle de la même composition. Le cours de géométrie demande souvent les mêmes parts sous forme d'angles au centre en degrés ; ce calculateur répond à la forme en pourcentages de cette question, celle que les tableaux de bord, les diapositives et les rapports d'enquête impriment réellement à côté de chaque part. Deux contraintes strictes gardent la figure honnête.
D'abord, chaque valeur doit être un nombre fini supérieur ou égal à zéro : une part négative n'a aucun sens sur un camembert et est rejetée plutôt que dessinée à l'envers. Ensuite, le total doit être strictement positif. Si toutes les catégories sont nulles, il n'existe pas de tout dont extraire un pourcentage, et la bonne réponse est une erreur, non un anneau de parts égales inventées.
Une fois les rapports exacts formés, l'arrondi en virgule flottante peut laisser un dernier chiffre qui fait totaliser la liste imprimée à 99.99 ou 100.01. Cette implémentation attribue ce résidu à la dernière catégorie non nulle afin que les pourcentages publiés totalisent exactement 100, contrat qu'exigent un camembert, une barre empilée et un tableau de composition avant que l'on fasse confiance à la figure.
Contrat d'entrée, formule, arrondi et l'erreur de total nul
Après validation le moteur additionne la liste une fois pour obtenir le total. Si ce total n'est pas strictement supérieur à zéro, la requête échoue avec un message indiquant que le total de toutes les valeurs est zéro, car chaque pourcentage vaut cent fois la valeur divisée par le total et cette division n'est pas définie lorsque le dénominateur est zéro. Sinon chaque pourcentage vaut cent fois la valeur divisée par le total, arrondi à dix décimales pour un contrat stable entre runtimes.
La dernière part non nulle est ensuite réécrite comme cent moins la somme des autres, de sorte que le vecteur de pourcentages totalise 100 même lorsqu'un tiers périodique laisserait un chiffre résiduel minuscule. Les catégories individuelles nulles sont autorisées et restent à zéro pour cent ; elles ne reçoivent jamais le résidu d'arrondi.
Cas d’usage
Devoirs et problèmes de composition
Les élèves convertissent une courte liste d'effectifs de catégorie en pourcentages de camembert qui totalisent 100, y compris la règle stricte qu'un total nul est invalide.
Tableaux de bord et rapports d'enquête
Les équipes produit et recherche transforment ventes, voix ou lignes budgétaires en pourcentages de légende sans tableur et sans un 99.99 pour cent restant.
Scripts et ancrages d'intégration continue
Les pipelines appellent un contrat déterministe de pourcentages au lieu de réimplémenter l'arrondi valeur-sur-total dans chaque langage.
Questions fréquentes
Quelle est la formule du pourcentage de camembert ?
Chaque pourcentage vaut 100 fois la valeur de cette catégorie divisée par la somme de toutes les valeurs. La dernière part non nulle est ajustée pour que les pourcentages publiés totalisent exactement 100.
Que se passe-t-il si le total de toutes les valeurs est zéro ?
Les échecs de validation ne sont pas facturés.
Les pourcentages totalisent-ils toujours 100 ?
Oui en cas de succès. Les parts nulles restent à 0 pour cent.
Le calculateur de pourcentages de camembert est-il gratuit ?
L'outil du navigateur s'exécute gratuitement sur votre appareil.
Puis-je saisir des montants en argent ou des minutes plutôt que des effectifs ?
Oui. Chaque part est la valeur divisée par le total, donc les unités s'annulent : effectifs, montants, minutes ou simples poids donnent le même type de pourcentage.
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/stat/pie-chart-percentage \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"values":[1,1,2]}'const res = await fetch("https://api.kit.forhosting.com/stat/pie-chart-percentage", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"values": [
1,
1,
2
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/stat/pie-chart-percentage",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"values": [
1,
1,
2
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/stat/pie-chart-percentage", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"values":[1,1,2]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"values":[1,1,2]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/stat/pie-chart-percentage", 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
{
"values": [
1,
1,
2
]
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "stat.pie_chart_percentage",
"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_values | 1000 |
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
Lorsque toutes les valeurs sont nulles le total est nul et la requête échoue avec invalid_input, car un camembert sans masse n'a pas de parts définies. La même fonction pure alimente l'outil gratuit du navigateur et le chemin API à $0.002 par requête réussie.
Contrat d'entrée, formule, arrondi et l'erreur de total nul
Appelez la capacité avec le champ obligatoire values : un tableau non vide de nombres finis non négatifs. Les scripts qui parlent déjà d'autres termes peuvent envoyer la même liste sous les alias numbers, data, counts ou list. Un champ manquant, un non-tableau, un tableau vide, une liste plus longue que le maximum publié de mille entrées, toute entrée qui n'est pas un nombre fini et toute entrée négative échouent avec invalid_input et ne consomment pas de solde. La réponse répète n et values, indique total, percentages, les parts unitaires correspondantes (chaque valeur sur le total), sum_percent (toujours 100 en cas de succès) et une courte chaîne formula.
Usage pratique, limites, tarif et lecture du résultat
Utilisez l'outil du navigateur lorsque vous voulez un pourcentage de camembert immédiat pour bâtir une diapositive, vérifier un exercice de composition ou transformer une courte colonne d'effectifs en libellés de légende sans ouvrir un tableur. Branchez le point d'accès sur des générateurs de rapports qui ont déjà des montants et ont besoin de pourcentages, sur des oracles de classe qui notent le partage vingt-cinq / vingt-cinq / cinquante à partir des valeurs un, un et deux, ou sur une étape préalable qui rejette une colonne entièrement nulle avant qu'un moteur de rendu n'essaie de dessiner un camembert vide. Utilisez l'API lorsqu'un tableau de bord, une plateforme d'enquêtes, un carnet budgétaire ou un générateur de leçons a besoin de JSON stable pour de nombreuses listes de catégories sous un seul contrat. Chaque requête réussie est un élément facturable à $0.002 ; l'échec de validation ne consomme pas de solde. Les listes acceptées restent bornées pour les isolats Worker : jusqu'à mille catégories couvrent tout camembert qu'un humain peut encore lire, et les listes plus longues appartiennent à un tableau plutôt qu'à un diagramme circulaire. Les résultats sont entièrement déterministes : les mêmes valeurs produisent toujours le même total, les mêmes percentages, les mêmes parts et le même sum_percent de cent. Lisez percentages pour les libellés que vous imprimez sur le graphique, shares si vous avez besoin d'une fraction de zéro à un pour la suite du calcul, et sum_percent comme contrôle rapide que la correction d'arrondi s'est appliquée.
Questions techniques
Comment calculer les pourcentages d'un camembert avec cet outil ?
Envoyez un JSON avec values (un tableau non vide de nombres non négatifs dont le total est supérieur à zéro) à stat.pie_chart_percentage. La réponse renvoie n, values, total, percentages, shares, sum_percent et formula.