Curva dei voti d’esame
Il calcolatore della curva applica una correzione coerente a un intero elenco di punteggi grezzi.
Esegui gratis nel browser
Lei può aggiungere punti fissi, scalare il risultato migliore fino al massimo oppure usare una curva a radice quadrata, che favorisce proporzionalmente i voti più bassi. La risposta mantiene l’ordine originale, limita i valori al massimo scelto e arrotonda a due decimali. Il procedimento resta quindi trasparente e ripetibile, mentre la decisione didattica spetta sempre al docente.
Scelga un metodo coerente con la valutazione
Una curva è innanzitutto una scelta accademica. L’aggiunta di punti assegna lo stesso incremento a ogni studente e conserva le differenze assolute, tranne quando interviene il limite massimo. La scalatura moltiplica tutti i risultati per un fattore comune finché il migliore raggiunge il massimo; può servire se la prova era più difficile del previsto. La radice quadrata offre un aumento proporzionalmente maggiore ai voti bassi e può modificare sensibilmente le distanze. Lei dovrebbe rispettare le regole pubblicate del corso e comunicare la motivazione con chiarezza, senza scegliere una formula soltanto perché produce risultati più generosi.
Inserisca i punteggi e legga il calcolo
Fornisca un elenco non vuoto di numeri finiti e non negativi, quindi selezioni uno dei tre metodi. Per i punti fissi indichi anche la quantità; può essere negativa, ma nessun risultato scende sotto zero. Il massimo predefinito è 100 e può essere modificato. La scalatura divide il massimo per il punteggio grezzo più alto e usa il quoziente come moltiplicatore comune. Un elenco composto solo da zeri non è scalabile. La radice quadrata trasforma ogni punteggio rispetto al massimo. L’ordine rimane invariato, così Lei può ricondurre i risultati al registro autorizzato senza inviare nomi o altri dati personali.
Verifichi equità, precisione e tracciabilità
Prima della pubblicazione, esamini l’intera distribuzione. I punti fissi mantengono le distanze finché il tetto non comprime i valori alti; la scalatura conserva le proporzioni, ma un risultato eccezionale può ridurre l’effetto; la radice quadrata cambia maggiormente gli intervalli. I valori sono arrotondati a due decimali per garantire stabilità. Conservi metodo, parametri, punteggi originali e motivazione, e svolga prima una prova con dati anonimi. Lo strumento esegue solo aritmetica deterministica: non stabilisce se la curva sia didatticamente corretta, non assegna lettere e non sostituisce la revisione del docente responsabile.
Casi d'uso
Correggere una prova troppo difficile
Scali tutti i risultati affinché il punteggio grezzo migliore raggiunga il massimo con un unico moltiplicatore.
Applicare una correzione uniforme
Aggiunga lo stesso numero di punti a ogni voto e limiti i risultati al massimo scelto.
Confrontare diverse politiche
Provi i tre metodi su punteggi anonimi per valutarne gli effetti prima della scelta.
Domande frequenti
Quanto costa il calcolo tramite API?
Ogni richiesta API costa $0.002. Il calcolatore nel browser può eseguire localmente lo stesso calcolo deterministico.
Che cosa accade ai voti superiori al massimo?
I valori corretti sono limitati a maximum_score, pari a 100 per impostazione predefinita. I punti fissi non possono inoltre generare valori sotto zero.
Come funziona la scalatura sul voto migliore?
Divide maximum_score per il punteggio grezzo più alto e moltiplica ogni punteggio per questo fattore comune.
Quale formula usa la curva a radice quadrata?
Calcola la radice quadrata del punteggio diviso per maximum_score e moltiplica il risultato per maximum_score.
I risultati corretti vengono arrotondati?
Sì. I voti calcolati e il fattore di scala mostrato vengono arrotondati a due decimali per una risposta stabile.
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo stack
curl -X POST https://api.kit.forhosting.com/edu/test-curve-adjust \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"scores":[64,81,90],"method":"square_root_curve"}'const res = await fetch("https://api.kit.forhosting.com/edu/test-curve-adjust", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"scores": [
64,
81,
90
],
"method": "square_root_curve"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/edu/test-curve-adjust",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"scores": [
64,
81,
90
],
"method": "square_root_curve"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/edu/test-curve-adjust", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"scores":[64,81,90],"method":"square_root_curve"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"scores":[64,81,90],"method":"square_root_curve"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/edu/test-curve-adjust", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Esempio di richiesta
{
"scores": [
64,
81,
90
],
"method": "square_root_curve"
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "edu.test_curve_adjust",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
max_items | 1000 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |