Fourchette de note finale possible avec les travaux restants
Le calculateur de fourchette de note finale indique la marge qui subsiste avant la correction de tous les travaux.
Lancer gratuitement
Tout se passe dans votre navigateur : gratuit, sans envoi de vos données.
Saisissez chaque note obtenue avec son poids, puis le poids cumulé des travaux restants. Le résultat présente votre moyenne pondérée actuelle ainsi que les notes finales minimale et maximale encore accessibles si le reste reçoit la note minimale ou maximale autorisée. Les poids peuvent être des pourcentages, des fractions décimales ou des points, à condition d’utiliser partout la même échelle.
Décrivez les parties terminée et restante du cours
Commencez par saisir chaque travail terminé avec une note et un poids. Un examen valant 25 pour cent peut avoir un poids de 25 et un quiz valant 5 pour cent un poids de 5. Si le barème emploie des fractions décimales, 0.25 et 0.05 conviennent aussi. Restez cohérent : ne mélangez pas pourcentages, décimales et points bruts. Indiquez ensuite le poids cumulé de tous les travaux inachevés. Il n’est pas nécessaire de prévoir chaque note, car le calculateur cherche les limites extrêmes et non une prévision unique. Par défaut, les bornes sont 0 et 100. Vous pouvez les modifier pour un autre barème, une participation garantie, une évaluation plafonnée ou des points bonus. Les notes acquises doivent respecter ces mêmes bornes, ce qui détecte les erreurs de saisie. Le poids total additionne les poids terminé et restant : le calcul fonctionne donc même si le barème ne totalise pas littéralement 100.
Comprenez le calcul de la fourchette accessible
Chaque note acquise est multipliée par son poids, puis ces produits sont additionnés. La moyenne actuelle divise cette contribution uniquement par le poids terminé et décrit donc les travaux déjà notés. La fourchette finale divise par le poids terminé plus le poids restant. Pour la pire note accessible, tout le poids restant reçoit la note minimale autorisée ; pour la meilleure, il reçoit la maximale. Il s’agit de limites mathématiques, pas de prévisions. Si la moitié du cours reste à faire, l’intervalle peut demeurer large malgré une moyenne stable ; s’il ne reste qu’un petit projet, il sera généralement étroit. L’arrondi intervient seulement après les calculs pondérés, sur les valeurs affichées, avec zéro à six décimales. Les mêmes bornes s’appliquant aux travaux terminés et restants, le résultat reste lisible sur une échelle 0–100 comme sur des échelles 0–20 ou 1–10.
Planifiez avec le résultat sans le surinterpréter
Considérez les valeurs basse et haute comme des repères. Si votre objectif dépasse le meilleur résultat accessible, même des notes parfaites sur tous les travaux restants ne permettront pas de l’atteindre avec ces poids. Si un seuil est inférieur ou égal au pire résultat, il est déjà assuré. Un objectif situé dans l’intervalle reste possible, mais ce calculateur n’indique pas la moyenne nécessaire pour l’obtenir. Consultez le règlement avant de décider : travaux éliminés, normalisation par catégorie, courbe, examen de remplacement, pénalités, bonus et dispenses peuvent modifier le calcul réel. Regroupez les travaux restants dans un seul poids uniquement s’ils partagent les mêmes bornes de note. Si une évaluation possède un plafond particulier ou un minimum garanti, calculez des scénarios distincts. Conserver les données avec le résultat facilite la mise à jour après la prochaine note et permet d’expliquer précisément les hypothèses retenues.
Cas d’usage
Vérifiez si un objectif reste accessible
Comparez la note visée à la meilleure note finale accessible si tous les travaux restants obtiennent le maximum.
Voyez si un seuil est déjà garanti
Comparez un seuil de réussite, de bourse ou de prérequis à la pire note finale sous le minimum indiqué.
Actualisez votre plan après chaque note
Ajoutez le travail nouvellement noté aux éléments terminés, réduisez le poids restant et observez l’intervalle se resserrer.
Questions fréquentes
Quel est le coût du calcul ?
L’exécution dans le navigateur est gratuite. Une requête API coûte $0.002.
Les poids doivent-ils totaliser 100 ?
Non. Utilisez des pourcentages, des fractions décimales ou toute autre échelle positive cohérente : le résultat est normalisé par le poids total.
Pourquoi la moyenne actuelle diffère-t-elle de la fourchette finale ?
La moyenne actuelle utilise seulement le poids terminé ; les deux limites finales incluent les poids terminé et restant au dénominateur.
Puis-je employer un barème autre que 0 à 100 ?
Oui. Définissez min_score et max_score comme extrémités du barème et exprimez toutes les notes acquises sur celui-ci.
La meilleure note prédit-elle mon résultat ?
Non. C’est le maximum mathématique selon les poids et bornes fournis, et non une prévision ou une probabilité.
Comment gérer les bonus ou les notes éliminées ?
Modélisez uniquement les poids et bornes effectifs du règlement. Lancez plusieurs scénarios si les travaux pris en compte peuvent changer.
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/grade-range-remaining \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"completed":[{"score":82,"weight":20},{"score":91,"weight":30}],"remaining_weight":50}'const res = await fetch("https://api.kit.forhosting.com/edu/grade-range-remaining", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"completed": [
{
"score": 82,
"weight": 20
},
{
"score": 91,
"weight": 30
}
],
"remaining_weight": 50
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/edu/grade-range-remaining",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"completed": [
{
"score": 82,
"weight": 20
},
{
"score": 91,
"weight": 30
}
],
"remaining_weight": 50
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/edu/grade-range-remaining", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"completed":[{"score":82,"weight":20},{"score":91,"weight":30}],"remaining_weight":50}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"completed":[{"score":82,"weight":20},{"score":91,"weight":30}],"remaining_weight":50}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/edu/grade-range-remaining", 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
{
"completed": [
{
"score": 82,
"weight": 20
},
{
"score": 91,
"weight": 30
}
],
"remaining_weight": 50
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "edu.grade_range_remaining",
"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 | 100 |
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. |