Calculateur de score d'examen normalisé
Un 40 sur 50 et un 64 sur 80 donnent tous deux 80 sur une échelle de 0 à 100. Saisissez la note brute avec le minimum et le maximum de son épreuve, et des examens aux totaux différents tiennent enfin dans une même colonne. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Score
- 40
- Score minimum
- 0
- Score maximal
- 50
- Minimum cible
- 0
- Maximum cible
- 100
- Portée
- 50
- Fraction
- 0,8
Une note brute d’examen est difficile à comparer lorsqu’une épreuve est notée sur cinquante, une autre sur quatre-vingts et une troisième utilise une note de classe de zéro à dix. La normalisation min-max étire ou comprime la note brute vers une échelle cible commune en n’utilisant que le minimum et le maximum publiés de chaque test, de sorte que la même performance relative tombe sur le même nombre. Par défaut la cible va de zéro à cent et se lit comme un pourcentage de l’intervalle source. Une validation en échec n’est pas facturée.
Ce qu’est la normalisation min-max d’une note et la formule qui la produit
La normalisation min-max est l’application linéaire qui place une note brute d’examen sur une échelle de compte rendu partagée en n’utilisant que le plancher et le plafond publiés de l’épreuve d’origine. Si un quiz est noté de zéro à cinquante et un autre de zéro à quatre-vingts, un 40 au premier représente quatre-vingts pour cent de cet intervalle, et un 64 au second aussi ; sans échelle commune ces deux chiffres paraissent sans lien et ne peuvent pas siéger dans la même colonne de classement.
Lorsque la cible est l’échelle par défaut de zéro à cent, le résultat est simplement le pourcentage de l’empan source. L’application est exacte, déterministe et ne suppose aucune distribution : elle n’utilise ni moyenne de classe, ni écart-type, ni score z, ni T psychométrique, et n’ajoute pas de points de courbe à chaque copie. Ce sont d’autres intentions de recherche, avec d’autres calculateurs.
Cette capacité n’implémente que le redimensionnement min-max, de sorte que deux épreuves aux maxima bruts différents deviennent comparables dès que chacune a un minimum et un maximum documentés.
Où un calculateur de score d’examen normalisé apporte de la valeur
Les enseignant·es et les responsables de département utilisent la normalisation min-max lorsqu’un partiel est noté sur quarante-cinq et un final sur cent, alors que les deux doivent figurer sur le même bulletin ou la même liste de bourses.
Les bureaux d’équivalence et les commissions d’admission internationale rencontrent le même problème à plus grande échelle : un examen national de zéro à vingt, une épreuve scolaire de zéro à cinquante et un quiz prestataire de zéro à quatre-vingts ne peuvent pas être moyennés tant que chaque note n’est pas sur une échelle commune.
Les sites de contenu qui visent calculateur de score d’examen normalisé gagnent une page ciblée dont le slug, le titre et les exemples correspondent à la requête tapée — distincte d’un outil de score z qui exige moyenne et écart-type, distincte d’un convertisseur T qui suppose un z déjà standardisé, et distincte d’une courbe linéaire qui n’ajoute que des points bonus.
Cas d’usage
Comparer partiels et finals aux barèmes de points différents
Placez un quiz 36/45 et un examen 82/100 sur la même échelle 0–100 pour que classement, moyennes et relevés aux familles restent équitables.
Équivalences et batteries mixtes d’épreuves
Ramenez examens nationaux, tests scolaires et quiz prestataires aux planchers et plafonds publiés différents vers une seule échelle de compte rendu.
Questions fréquentes
Comment normalise-t-on une note brute d’examen avec un min et un max ?
Sur la cible 0–100 par défaut, c’est simplement le pourcentage de l’empan source.
Quelle est l’échelle cible par défaut ?
De zéro à cent. Fixez-les explicitement pour projeter sur 0–10, 0–20, 1–5 ou toute autre échelle de classe courante.
En quoi cela diffère-t-il d’un score z ou d’un T d’examen ?
Un score z utilise la moyenne et l’écart-type de la cohorte. Un T recentre un z déjà calculé sur une moyenne 50 et un ET 10. Cet outil n’utilise que le min et le max publiés de l’épreuve, sans distribution supposée.
Que se passe-t-il si des points bonus dépassent le maximum ?
La note est tout de même convertie, le résultat dépasse donc le haut de l'échelle cible, et elle est signalée hors plage au lieu d'être rabotée. Vous décidez ensuite comment votre propre règle doit la traiter.
Puis-je convertir sur 10 ou sur 20 plutôt qu'en pourcentage ?
Oui. Indiquez la valeur la plus basse et la plus haute de l'échelle sur laquelle vous rendez les notes, et la note se place au même rang relatif. Il suffit que les deux bornes de chaque échelle soient différentes.
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/normalized-test-score \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"score":40,"min_score":0,"max_score":50}'const res = await fetch("https://api.kit.forhosting.com/edu/normalized-test-score", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"score": 40,
"min_score": 0,
"max_score": 50
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/edu/normalized-test-score",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"score": 40,
"min_score": 0,
"max_score": 50
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/edu/normalized-test-score", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"score":40,"min_score":0,"max_score":50}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"score":40,"min_score":0,"max_score":50}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/edu/normalized-test-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
{
"score": 40,
"min_score": 0,
"max_score": 50
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "edu.normalized_test_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_abs | 1000000000 |
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 score normalisé applique l’application linéaire : la valeur normalisée égale target_min plus la fraction (score moins min_score) divisée par (max_score moins min_score), multipliée par (target_max moins target_min).
Ce qu’est la normalisation min-max d’une note et la formule qui la produit
L’identité est : la valeur normalisée égale target_min plus la quantité (score moins min_score) divisée par (max_score moins min_score), puis multipliée par (target_max moins target_min). Les notes de crédit supplémentaire un peu au-dessus du plafond publié sont encore projetées (la fraction dépasse alors un) et marquées in_range false, au lieu d’être écrêtées en silence.
Contrat d’entrée, forme de la réponse et erreurs de validation
Une validation en échec n’est pas facturée. Envoyez par POST un corps JSON avec les champs obligatoires score, min_score et max_score comme nombres finis dont la valeur absolue ne dépasse pas un milliard. Les optionnels target_min et target_max valent par défaut zéro et cent, afin qu’un appel de classe typique renvoie un pourcentage de l’intervalle source sans champs supplémentaires. Les chaînes numériques sont acceptées ; les chaînes vides, NaN, Infinity et les types non numériques échouent avec invalid_input en nommant le champ. Un empan source nul est rejeté car diviser par (max_score moins min_score) serait indéfini : max_score ne doit pas égaler min_score. La même règle vaut pour la cible : target_max ne doit pas égaler target_min. Des alias sont acceptés pour que les colonnes de tableur se correspondent sans renommage — raw, raw_score, value et mark pour score ; min, source_min et raw_min pour min_score ; max, source_max et raw_max pour max_score ; to_min et new_min pour target_min ; to_max et new_max pour target_max. En cas de succès le corps inclut les extrémités nettoyées, span (max_score moins min_score), fraction sur l’intervalle unité, percent (fraction fois cent), normalized_score sur l’échelle cible, in_range comme booléen, formula avec l’identité lisible et method min_max pour les clients machine qui branchent selon la politique. Exemple : score quarante, min_score zéro, max_score cinquante donne fraction zéro virgule huit, percent quatre-vingts et normalized_score quatre-vingts sur la cible par défaut. Un score soixante-quinze sur une épreuve de zéro à quatre-vingts, projeté sur zéro-dix, donne normalized_score neuf virgule trois sept cinq.
Où un calculateur de score d’examen normalisé apporte de la valeur
Parce que l’implémentation est du parse pur de niveau A, chaque appel réussi coûte le tarif de base publié $0.002 sans jetons de modèle ni réseau sortant ; les charges invalides ne consomment pas le solde. Laissez l’identité explicite dans l’interface, documentez qu’il s’agit d’un redimensionnement par plage et non d’un score standard psychométrique, et figez le normalized_score arrondi dans les tests afin que les plugins LMS, les générateurs de relevés et les workers de bord restent reproductibles d’un runtime à l’autre.
Cas d'intégration
Imports LMS et tableaux de bord de recherche
Exécutez la même application min-max dans le widget du navigateur et dans une API par lots pour que les pipelines ne divergent pas du calculateur public.
Questions techniques
Que se passe-t-il si la note brute sort de min_score et max_score ?
L’application linéaire s’exécute encore (un crédit supplémentaire peut dépasser le plafond publié). in_range vaut false et la fraction peut être sous 0 ou au-dessus de 1. Un empan source ou cible nul est rejeté.
Combien coûte le calculateur de score d’examen normalisé ?
L’outil du 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.