Calculateur de note pondérée selon un barème
Un barème pondéré rassemble plusieurs résultats en une seule note tout en respectant l’importance de chaque partie du travail.
Lancer gratuitement
Ce calculateur multiplie le niveau de chaque critère par son coefficient, additionne les contributions et détaille le calcul du total. Saisissez des coefficients décimaux, par exemple 0.40 pour 40 pour cent, si vous souhaitez conserver l’échelle des niveaux. La réponse indique aussi le poids total et la moyenne pondérée afin que vous puissiez repérer un barème incomplet ou une échelle inhabituelle avant d’enregistrer la note.
Définissez des niveaux et coefficients cohérents
Créez une ligne pour chaque critère du barème. Donnez-lui un nom clair, saisissez le niveau ou les points obtenus, puis le multiplicateur correspondant à son importance. Si la Recherche vaut 40 pour cent, utilisez 0.40 plutôt que 40 pour conserver l’échelle initiale. Un barème peut attribuer 0.40 à la Recherche, 0.35 au Raisonnement et 0.25 à la Rédaction : la somme vaut 1 et le total pondéré reste comparable aux niveaux. Les poids ne totalisant pas 1 sont également acceptés, notamment pour des multiplicateurs de points ou une section incomplète. Consultez alors total_weight et weighted_average. Niveaux et poids doivent être des nombres finis positifs ou nuls, avec au moins un poids supérieur à zéro. Ne mélangez pas une échelle sur quatre points et des pourcentages sauf si votre politique le prévoit.
Comprenez le calcul de la note pondérée
Pour chaque ligne, la note pondérée est égale au niveau multiplié par le poids. Tous les produits sont ensuite additionnés dans total_weighted_score. Ainsi, un niveau 4 de poids 0.40 apporte 1.60, tandis qu’un niveau 3 de poids 0.35 apporte 1.05. Le tableau contributions conserve ces valeurs intermédiaires afin que l’étudiant, l’enseignant ou le réviseur puisse reproduire le résultat. weighted_average divise la somme non arrondie par la somme non arrondie des poids. Si les poids totalisent 1, moyenne et total sont identiques. S’ils totalisent 100, la moyenne rétablit l’échelle des critères. L’arrondi concerne uniquement l’affichage, selon une précision de zéro à dix décimales. Les valeurs originales sont additionnées avant l’arrondi afin d’éviter toute dérive.
Contrôlez le résultat avant de noter
Considérez la sortie comme un calcul vérifiable, et non comme un remplacement des règles du barème. Comparez criteria_count au nombre de lignes, puis examinez total_weight : 1 correspond généralement aux proportions décimales et 100 aux pourcentages entiers. Parcourez contributions pour vérifier les multiplicateurs et l’échelle de chaque niveau. L’outil ne déduit ni critères manquants, ni maxima, ni seuils de mention, ni pénalités de retard, bonus ou conditions de réussite. Appliquez ces règles séparément, sauf si elles figurent explicitement comme critères. Chaque contribution correspond ainsi à une ligne envoyée et les désaccords sont faciles à retracer. Pour un traitement automatisé, conservez l’entrée avec la réponse. L’API coûte $0.002 par requête et le même calcul peut s’exécuter dans le navigateur sans transmettre le barème à un service de notation tiers.
Cas d’usage
Calculer la note d’un devoir
Combinez les niveaux de recherche, raisonnement, présentation et rédaction selon les coefficients publiés.
Auditer une feuille de notes
Comparez les contributions détaillées au total d’un tableur pour repérer un poids ou une formule erronés.
Prévisualiser un nouveau barème
Mesurez l’effet d’une modification des coefficients avant de publier une nouvelle évaluation.
Questions fréquentes
Quelle formule le calculateur utilise-t-il ?
Il multiplie chaque niveau par son poids et additionne les produits, puis divise la somme par le poids total pour fournir la moyenne pondérée.
Faut-il saisir 30 ou 0.30 pour un poids de 30 pour cent ?
Utilisez 0.30 pour conserver l’échelle des niveaux. Vous pouvez saisir 30, mais le total brut sera multiplié par 100 ; weighted_average le normalisera.
Les poids doivent-ils totaliser 1 ?
Non. total_weight signale une échelle différente ou un barème partiel, et weighted_average normalise tout poids total positif.
Les critères peuvent-ils avoir des maxima différents ?
Le calcul accepte les niveaux non négatifs, mais ne normalise pas des maxima différents. Convertissez-les sur une échelle commune si nécessaire.
Quel est le prix du calcul par API ?
Chaque requête API coûte $0.002. La version navigateur effectue localement le même calcul déterministe.
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/edu/rubric-weighted-score \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"criteria":[{"name":"Research","level":4,"weight":0.4},{"name":"Reasoning","level":3,"weight":0.35},{"name":"Writing","level":5,"weight":0.25}]}'const res = await fetch("https://api.kit.forhosting.com/edu/rubric-weighted-score", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"criteria": [
{
"name": "Research",
"level": 4,
"weight": 0.4
},
{
"name": "Reasoning",
"level": 3,
"weight": 0.35
},
{
"name": "Writing",
"level": 5,
"weight": 0.25
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/edu/rubric-weighted-score",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"criteria": [
{
"name": "Research",
"level": 4,
"weight": 0.4
},
{
"name": "Reasoning",
"level": 3,
"weight": 0.35
},
{
"name": "Writing",
"level": 5,
"weight": 0.25
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/edu/rubric-weighted-score", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"criteria":[{"name":"Research","level":4,"weight":0.4},{"name":"Reasoning","level":3,"weight":0.35},{"name":"Writing","level":5,"weight":0.25}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"criteria":[{"name":"Research","level":4,"weight":0.4},{"name":"Reasoning","level":3,"weight":0.35},{"name":"Writing","level":5,"weight":0.25}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/edu/rubric-weighted-score", 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
{
"criteria": [
{
"name": "Research",
"level": 4,
"weight": 0.4
},
{
"name": "Reasoning",
"level": 3,
"weight": 0.35
},
{
"name": "Writing",
"level": 5,
"weight": 0.25
}
]
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "edu.rubric_weighted_score",
"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_items | 500 |
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. |