Verificador de nota mínima: percentual e margem
O verificador transforma três valores brutos em uma resposta clara: os pontos obtidos, o total possível e a nota mínima.
Executar grátis
Ele informa se houve aprovação, converte a nota e o corte em percentuais e mostra a distância até o limite em pontos brutos e pontos percentuais. Assim, você interpreta corretamente o resultado mesmo quando a prova usa uma escala pouco comum.
Informe nota e corte na mesma escala
Use a pontuação bruta obtida, o valor máximo da prova e a nota mínima, todos na mesma escala. Se a avaliação vale 80 pontos, o aluno fez 58 e precisa de 48, informe 58, 80 e 48. Não digite 60 como corte apenas porque 48 de 80 corresponde a 60 por cento; a ferramenta faz essa conversão. Valores decimais são aceitos quando há crédito parcial. A nota e o corte devem ficar entre zero e o total, e o total precisa ser maior que zero. Isso evita comparar percentuais diretamente com pontos. Nenhuma regra acadêmica é presumida além do limite que você fornece, e entradas iguais sempre produzem a mesma resposta.
Entenda aprovação, percentuais e margem
O campo passed é verdadeiro quando a nota bruta é igual ou superior ao corte. A igualdade aprova porque a nota mínima é o menor resultado aceitável. percentage mostra a parcela dos pontos obtida, enquanto passing_percentage apresenta o corte na mesma escala percentual. margin_points é a nota menos o corte: positivo significa acima, zero significa exatamente no limite e negativo revela quanto faltou. margin_percentage_points expressa a mesma diferença em relação ao total. Pontos percentuais são usados corretamente: sair de um corte de 60 por cento para um resultado de 65 por cento representa cinco pontos percentuais. Os números são arredondados para até seis casas decimais, preservando precisão útil e estabilidade.
Use o cálculo com consistência
A ferramenta serve quando a regra oficial já é conhecida, mas a escala dificulta a leitura. Um professor pode conferir a nota antes da publicação, um estudante pode entender a distância até o requisito e uma secretaria pode aplicar o mesmo corte a vários registros. Ela não escolhe a nota mínima, cria curva, elimina questões, pondera categorias nem decide regras institucionais de arredondamento. Resolva essas políticas antes. Se o curso combina atividades com pesos diferentes, calcule primeiro a pontuação oficial combinada e o total correspondente, ou siga o sistema aprovado pela instituição. Trate a margem como explicação aritmética, não como autorização para contrariar o regulamento. Em automações, cada solicitação de API custa US$ 0,002.
Casos de uso
Confirmar o resultado individual
Compare os pontos do aluno com o corte publicado e comunique percentual e margem exata.
Explicar uma reprovação por pouco
Mostre quantos pontos brutos e percentuais faltaram sem converter escalas manualmente.
Automatizar verificações
Aplique um corte conhecido de modo consistente e mantenha campos claros para relatórios e auditorias.
Perguntas frequentes
Uma nota exatamente igual ao corte é aprovada?
Sim. O corte é a menor nota de aprovação; passed será verdadeiro e as duas margens serão zero.
Devo informar o corte em pontos ou percentual?
Informe pontos brutos na mesma escala da nota e do total. A ferramenta calcula o percentual.
Posso usar valores decimais?
Sim. Números decimais finitos são aceitos para avaliações com crédito parcial.
O que significa margem negativa?
A nota ficou abaixo do corte. O valor absoluto mostra a falta em pontos brutos ou percentuais.
A ferramenta aplica curva ou pesos?
Não. Ela compara apenas a nota e o corte informados. Aplique curvas e pesos antes.
Quanto custa uma solicitação de API?
Cada solicitação de API custa US$ 0,002. A versão no navegador executa localmente o mesmo cálculo determinístico.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/edu/exam-pass-threshold \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"score":72,"total":100,"passing_mark":70}'const res = await fetch("https://api.kit.forhosting.com/edu/exam-pass-threshold", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"score": 72,
"total": 100,
"passing_mark": 70
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/edu/exam-pass-threshold",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"score": 72,
"total": 100,
"passing_mark": 70
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/edu/exam-pass-threshold", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"score":72,"total":100,"passing_mark":70}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"score":72,"total":100,"passing_mark":70}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/edu/exam-pass-threshold", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"score": 72,
"total": 100,
"passing_mark": 70
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "edu.exam_pass_threshold",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |