Calculateur de courbe linéaire
Donnez à toute la classe les mêmes 5 points de bonus après un examen difficile et voyez la moyenne bouger, de 79 à 84 dans l'exemple. Aucune note ajustée ne dépasse 100 %, et vous voyez combien d'élèves touchent ce plafond. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Scores
- 72, 85, 91, 68
- Points
- 5
- Notes ajustées
- 77, 90, 96, 73
- Note maximale
- 100
- Quantité
- 4
- Nombre plafonné
- 0
Une courbe linéaire de notes est l’ajustement le plus simple après un examen difficile : ajouter le même nombre fixe de points à chaque score brut en pourcentage, puis refuser de publier quoi que ce soit au-dessus de cent pour cent.
Ce que fait une courbe linéaire, et ce qu'elle ne fait pas
Après un examen qui s'est révélé plus dur que prévu, la correction la plus simple consiste à ajouter le même nombre de points à chaque note brute. Avec 5 points pour tous, une classe dont la moyenne était de 79 passe à 84, et chaque élève garde le même écart avec ses camarades. La seule limite est le plafond : une note ajustée ne peut jamais dépasser 100 %, sinon un élève déjà très haut apparaîtrait au-dessus du maximum. La courbe ne multiplie rien, ne redistribue pas les notes et ne force pas la meilleure copie à 100 : ce sont d'autres façons d'ajuster une série.
Choisir le bonus sans mauvaise surprise
Collez les notes d'un groupe, essayez deux ou trois valeurs de points et comparez la moyenne avant et après : dans l'exemple, elle passe de 79 à 84. Regardez aussi combien d'élèves touchent le plafond. Si beaucoup s'y entassent, le bonus efface les différences en haut du classement et il vaut mieux le réduire. Zéro point est accepté pour simplement relire la liste ; un nombre négatif ne l'est pas, car il s'agit d'ajouter des points, pas d'en retirer. Les notes ressortent dans l'ordre où vous les avez saisies.
Ce qu’est une courbe linéaire à points et comment fonctionne le plafond à 100 %
Dans de nombreux cours secondaires et universitaires, une courbe linéaire de notes consiste à ajouter un bonus constant à chaque score brut en pourcentage après une évaluation trop difficile par rapport à la difficulté prévue. Si la classe a composé un examen sur cent et que l’enseignant juge juste un allègement de cinq points, chaque score brut r devient min(100, r + 5).
Le minimum avec cent est essentiel : sans lui, un étudiant qui a déjà obtenu quatre-vingt-dix-sept apparaîtrait à cent deux, ce que la plupart des carnets de notes et systèmes de relevés rejettent ou tronquent ensuite en silence. La capacité ne redimensionne pas la distribution, n’impose pas le score maximal à cent et n’applique pas de facteur multiplicatif ; ce sont d’autres politiques de courbe (par exemple proportionnelles ou par classement) qui relèvent d’autres outils.
Cette prévisibilité permet aux assistants de prévisualiser l’effet d’une courbe proposée avant de publier les notes finales.
Questions fréquentes
Comment fonctionne le calculateur de courbe linéaire de notes ?
Chaque score courbé est min(100, raw + points).
Puis-je ajouter un nombre négatif de points ?
Non. Ce point d’accès n’implémente qu’une courbe linéaire d’ajout de points.
Combien de scores puis-je courber à la fois ?
Les listes plus longues doivent être découpées en lots.
Que devient une note qui dépasserait 100 % ?
Elle s'arrête à 100. Chaque note ajustée vaut la note brute plus les points, ou 100 si c'est plus bas, et le résultat indique combien d'élèves touchent ce plafond pour que vous jugiez si le bonus est trop large.
Une courbe linéaire change-t-elle l'écart entre les élèves ?
Non. Tout le monde reçoit les mêmes points, donc l'écart entre deux élèves reste identique, sauf si l'un d'eux atteint le plafond. Elle ne rééchelonne pas les notes et ne ramène pas la meilleure à 100.
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/edu/linear-grade-curve \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"scores":[72,85,91,68],"points":5}'const res = await fetch("https://api.kit.forhosting.com/edu/linear-grade-curve", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"scores": [
72,
85,
91,
68
],
"points": 5
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/edu/linear-grade-curve",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"scores": [
72,
85,
91,
68
],
"points": 5
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/edu/linear-grade-curve", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"scores":[72,85,91,68],"points":5}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"scores":[72,85,91,68],"points":5}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/edu/linear-grade-curve", 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
{
"scores": [
72,
85,
91,
68
],
"points": 5
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "edu.linear_grade_curve",
"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. |
Notes techniques
Ce calculateur de courbe linéaire de notes accepte un tableau de scores bruts et un bonus de points non négatif, calcule curved_i égal au minimum entre cent et raw_i plus points pour chaque étudiant, et renvoie la liste courbée complète, le nombre de scores qui ont atteint le plafond, ainsi que les moyennes de classe avant et après l’ajustement. La même arithmétique pure alimente l’outil gratuit du navigateur et le chemin API, de sorte que les scripts de notation et les démonstrations de devoirs restent stables octet par octet. Scores manquants, tableaux vides, points négatifs et valeurs non finies échouent avec invalid_input au lieu d’inventer une courbe.
Ce qu’est une courbe linéaire à points et comment fonctionne le plafond à 100 %
Ce point d’accès encode directement cette convention de salle de classe : curved est égal à min(100, raw plus points) pour chaque entrée du tableau scores, dans le même ordre que vous les avez envoyées. Ici, les seuls paramètres libres sont la liste des scores bruts en pourcentage et la constante non négative de points à ajouter. Les scores peuvent légèrement sortir de zéro à cent si le carnet source utilise des bonus ou des données incomplètes ; la courbe ajoute quand même des points et ne plafonne que le côté supérieur à cent. Les bonus négatifs sont rejetés car cette page produit et le contrat API décrivent une courbe linéaire d’ajout de points, non une déduction générale. Zéro point est autorisé et agit comme une pure validation qui rapporte encore les moyennes et un capped_count de zéro, sauf si un score brut dépassait déjà cent et est plafonné par la même règle de maximum.
Contrat d’entrée, forme de la réponse et comportement d’erreur
Associez les listes à vos propres bandes de lettres si vous avez besoin d’étiquettes A–F ; ce point d’accès n’applique que la courbe linéaire numérique et n’émet ni lettres, ni poids, ni moyennes par catégorie. Envoyez en POST un corps JSON avec deux champs obligatoires : scores, un tableau non vide de nombres finis (une à cinq cents entrées), et points, un nombre fini non négatif de points bonus à ajouter à chaque score brut. Chaque élément de score et le champ points peuvent arriver comme nombre JSON ou comme chaîne numérique ; les alias raw_scores, grades et values correspondent à scores, tandis que points_to_add, bonus, curve_points et add correspondent à points. Scores manquants, valeur scores non tableau, liste vide, plus de cinq cents entrées, points manquants, points négatifs, NaN, Infinity et éléments non numériques échouent avec invalid_input et des messages qui nomment le champ ou l’index. Ces échecs de validation ne sont pas facturés. En cas de succès, le corps renvoie le tableau scores nettoyé et la valeur points, curved_scores dans le même ordre, max_score à cent, count comme taille de la classe, capped_count comme le nombre d’étudiants exactement au plafond parce que raw plus points dépassait cent, ainsi que mean_raw et mean_curved comme moyennes arithmétiques pour une comparaison rapide avant/après. La chaîne formula réaffirme que curved égale min(100, raw plus points) et method est linear_grade_curve. Exemple : scores soixante-douze, quatre-vingt-cinq, quatre-vingt-onze, soixante-huit avec cinq points donnent soixante-dix-sept, quatre-vingt-dix, quatre-vingt-seize, soixante-treize, sans plafonnement si aucun n’a dépassé cent ; un brut de quatre-vingt-dix-huit avec cinq points devient cent et incrémente capped_count.
Où une API de courbe linéaire de notes apporte de la valeur
Les systèmes de gestion de l’apprentissage et les pipelines d’export de notes ont besoin d’un oracle déterministe afin que chaque client—web, mobile ou import CSV par lots—s’accorde sur les pourcentages courbés pour la même liste brute et le même bonus. Les sites de contenu peuvent démontrer une courbe équitable sans livrer des macros de tableur qui cassent selon le séparateur décimal local. Une validation échouée ne consomme pas de solde. Les assistants peuvent coller les scores d’une section, essayer deux ou trois valeurs de points et choisir une courbe qui relève la moyenne sans créer un amas au-dessus de cent que le secrétariat des scolarités n’acceptera pas. Comme l’implémentation est pure parse de niveau A, chaque appel réussi coûte le prix de base publié $0.002 sans jetons de modèle ni réseau sortant. Gardez les requêtes sous la limite de cinq cents scores, figez curved_scores et les moyennes dans les tests, et vous obtenez des courbes linéaires reproductibles pour plugins LMS, démonstrations de permanence et workers en périphérie sans déployer votre propre infrastructure de notation.
Cas d'intégration
Aperçu de courbe après l’examen
Collez les scores bruts en pourcentage d’une section et essayez un bonus fixe (par exemple cinq ou dix points) pour voir les notes courbées et qui atteint le plafond de 100 % avant publication.
Automatisation LMS et export de notes
Appliquez la même règle min(100, raw + points) dans des pipelines par lots pour que chaque client s’accorde sur les pourcentages courbés et sur capped_count.
Contrôles d’équité pour l’assistant
Comparez mean_raw et mean_curved pour des valeurs candidates de points et documentez une courbe linéaire transparente pour les étudiants.
Questions techniques
Quel est le score courbé maximal ?
Cent pour cent. Si raw plus points dépasse 100, le résultat est plafonné à 100 et compté dans capped_count.
Combien coûte le calculateur de courbe linéaire de notes ?
L’outil navigateur est gratuit. Les requêtes API utilisent le solde prépayé KIT à $0.002 par appel réussi ; une entrée invalide n’est pas facturée.