Posto percentil da turma
Uma nota 85 numa turma de 10 em que 5 tiraram menos, 2 empataram e 3 tiraram mais fica no percentil 50. Cole as notas da turma e uma nota para ver a parte dos colegas abaixo e a parte igual ou abaixo. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Pontuação
- 85
- N
- 10
- Abaixo
- 5
- Iguais
- 2
- Acima
- 3
Um posto percentil da turma responde à pergunta que todo diário de notas acaba fazendo: dada a pontuação deste estudante, que fração da turma tirou um resultado estritamente menor? Professores, orientação, quem escreve um LMS e as famílias não querem um corte do percentil k nem uma faixa verbal; querem um posto calculado sobre a lista real que está à frente. Receitas de planilha oscilam entre fórmulas exclusivas, inclusivas e de posto médio, e duas turmas do mesmo curso podem informar postos diferentes para a mesma marca se a lista de comparação não estiver fixada. Esta calculadora aceita uma pontuação de consulta e uma lista finita de notas da turma, conta quantas marcas da lista caem estritamente abaixo da consulta e devolve essa contagem como porcentagem do tamanho da turma. Sem rede, sem modelo e sem aleatoriedade: você informa a lista e a nota, e o posto é reproduzível para cada entrada válida.
Como o posto percentil da turma se define a partir da lista
O posto percentil da turma não é a mesma estatística que o percentil k de um conjunto de dados. O percentil k responde qual nota ocupa uma posição escolhida numa lista ordenada; o posto da turma responde à pergunta inversa da sala: das marcas já presentes na lista, que porcentagem fica estritamente abaixo da pontuação deste estudante.
A fórmula exclusiva usada aqui é PR igual a B sobre N vezes cem, em que N é o comprimento da lista scores que você envia e B é a contagem de valores estritamente menores que a nota consultada.
Empates não inflacionam o posto exclusivo: colegas que empatam a consulta contam em equal, não em below, de modo que uma marca única no topo de uma turma de dez tem B igual a nove e um posto de noventa, enquanto uma nota que outros quatro colegas também tiraram ainda informa só a fração que tirou menos. Você decide se a lista inclui o estudante consultado. Se a lista é a turma completa com esse estudante, N é o tamanho da turma e uma coincidência consigo mesmo aparece em equal.
Se a lista é o restante, N é o número de colegas e o posto é a fração de pares que tirou menos. As duas leituras são válidas; a calculadora não insere nem remove por conta própria a nota consultada. Os casos de fronteira são honestos: a marca única mais baixa dá posto zero, uma nota acima de todas as da lista dá cem, e uma turma de um com nota coincidente dá posto exclusivo zero e cem por cento no valor ou abaixo.
O motor nunca estima uma média, nunca interpola entre estatísticas de ordem e nunca projeta o posto sobre faixas baixo, médio ou alto. Conta, divide e devolve as duas porcentagens mais as contagens below, equal e above para que um docente mostre a aritmética no quadro.
Onde um posto percentil da turma agrega valor
Diários de sala e plugins LMS precisam de um mapeamento documentado de uma marca bruta mais uma lista para um posto 0–100, para que o boletim impresso, o portal das famílias e a explicação no horário de atendimento não se contradigam sobre o mesmo estudante. Coordenações que comparam turmas querem a cifra exclusiva de quem tirou menos, não que cada docente invente uma regra de empate diferente na planilha pessoal.
Produtos de ed-tech que já guardam notas de itens podem anexar um percentil da turma na borda sem embarcar um segundo motor estatístico nem enviar a lista a um site de terceiros. Sites de conteúdo que disputam posto percentil da turma ou percentil de uma nota se beneficiam de um caminho gratuito no navegador que coincide byte a byte com a automação paga sobre a mesma biblioteca analítica. A validação falha não consome saldo.
Casos de uso
Posto no diário sobre uma lista publicada
Transforme uma marca do estudante mais a lista da turma no posto percentil exclusivo para o boletim e o LMS.
Explicações no atendimento e às famílias
Mostre as contagens below, equal e above para que uma família veja quantos colegas tiraram menos que uma marca dada.
Perguntas frequentes
Um empate sobe o posto percentil?
Não. Colegas que empatam a consulta contam em equal, não em below.
A própria nota do estudante deve estar na lista scores?
Os dois jeitos são válidos. Se a lista inclui esse estudante, n é o tamanho da turma e uma coincidência consigo mesmo aparece em equal. Se a lista é o restante, n é o número de colegas. A calculadora não insere nem remove a nota consultada.
Isso é o mesmo que um percentil k ou um posto percentil médio?
Não. Um percentil k acha um corte numa lista ordenada. O posto médio dá meio crédito aos empates. Esta ferramenta informa a fração exclusiva da sala que tirou um resultado estritamente menor.
Qual é a diferença entre o posto percentil e a porcentagem igual ou abaixo?
O posto percentil conta só as notas estritamente menores, enquanto o segundo número soma também os empates. No exemplo, 5 de 10 tiraram menos, o que dá 50, e com as 2 notas empatadas passa a 70.
Preciso da média e do desvio padrão da turma?
Não. O posto sai direto da lista de notas que você cola, sem supor média, dispersão ou curva normal. Por isso a resposta vale para a turma real, e não é uma estimativa a partir de um escore z.
Ferramentas relacionadas
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/percentile-rank-class \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"score":85,"scores":[62,71,74,78,81,85,85,88,92,97]}'const res = await fetch("https://api.kit.forhosting.com/edu/percentile-rank-class", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"score": 85,
"scores": [
62,
71,
74,
78,
81,
85,
85,
88,
92,
97
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/edu/percentile-rank-class",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"score": 85,
"scores": [
62,
71,
74,
78,
81,
85,
85,
88,
92,
97
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/edu/percentile-rank-class", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"score":85,"scores":[62,71,74,78,81,85,85,88,92,97]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"score":85,"scores":[62,71,74,78,81,85,85,88,92,97]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/edu/percentile-rank-class", 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": 85,
"scores": [
62,
71,
74,
78,
81,
85,
85,
88,
92,
97
]
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "edu.percentile_rank_class",
"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.
Limites
max_n | 10000 |
max_abs | 1000000000000000 |
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. |
Notas técnicas
O mesmo módulo analítico determinístico alimenta a ferramenta gratuita do navegador e o caminho da API, assim um plugin do diário e uma conferência no horário de atendimento não discordam.
Como o posto percentil da turma se define a partir da lista
A resposta também informa percent_at_or_below, que é B mais E sobre N vezes cem, porque boletins às vezes precisam desse companheiro inclusivo. Isto não é a convenção de posto médio que dá meio crédito aos empates, nem um escore z nem uma letra na curva de sino; essas ferramentas partem de uma média e de um desvio padrão em vez de uma lista concreta.
Contrato de entrada, campos de resposta e validação
Exemplo: score setenta e cinco diante de cinquenta, sessenta, setenta, oitenta, noventa —uma consulta que não está na lista— produz below três, equal zero, above dois e um posto de sessenta. Envie por POST um corpo JSON com dois campos obrigatórios: score, um número finito na mesma escala da lista, e scores, uma lista não vazia de marcas finitas da turma. score aceita os aliases value, mark, raw e x. scores aceita class_scores, roster, data e values, e também se admite uma cadeia de números separados por vírgulas ou espaços quando um formulário envia texto simples em vez de uma matriz JSON. Cada elemento é lido como decimal finito; sinais iniciais opcionais e notação científica são permitidos, enquanto tokens vazios, booleanos, objetos, Infinity e NaN falham com invalid_input para que uma célula ruim nunca vire um zero silencioso. O motor impõe um máximo rígido de dez mil marcas na lista e um teto de magnitude por valor, de modo que memória e latência fiquem num orçamento previsível no caminho gratuito do navegador e no Worker. Falta de score, falta de scores, lista vazia ou lista acima do comprimento publicado falham com invalid_input e não são cobradas. Em sucesso o corpo ecoa score, devolve n como comprimento da lista, below, equal e above como a partição em três dessa lista, percentile_rank como cem vezes below sobre n, percent_at_or_below como cem vezes below mais equal sobre n, class_min e class_max como os extremos observados, method como exclusive_below, uma cadeia formula curta, o teto publicado max_n e um message de uma linha para a interface. Exemplo: score 85 diante da lista de dez marcas sessenta e dois, setenta e um, setenta e quatro, setenta e oito, oitenta e um, oitenta e cinco, oitenta e cinco, oitenta e oito, noventa e dois, noventa e sete produz below cinco, equal dois, above três, percentile_rank cinquenta e percent_at_or_below setenta. Campos opcionais são omitidos em vez de null, e todos os nomes são snake_case seguro para o DOM em widgets e SDK.
Onde um posto percentil da turma agrega valor
Centros de tutoria e escritórios de sucesso acadêmico explicam às famílias por que um oitenta e dois fica perto do meio numa prova difícil e perto do fundo numa fácil; uma API determinística permite que essas conversas partam das mesmas contagens. Como a implementação é parse de nível A, cada chamada correta custa o preço-base publicado US$ 0,002 sem tokens de modelo e sem rede de saída. Mantenha as cargas pequenas, fixe percentile_rank junto com below e n nos testes, e você obtém postos de sala reproduzíveis para plugins do diário, scripts de secretaria e relatórios às famílias sem levantar uma pilha psicométrica completa por conta própria. Combine este endpoint com um classificador de faixas se depois quiser um rótulo verbal, e com uma ferramenta à parte de percentil k se precisar de um corte em vez do posto de uma só nota.
Casos de integração
Automação de LMS e de secretaria
Anexe um percentile_rank estável para máquina às listas guardadas, com a mesma fórmula exclusiva da ferramenta gratuita do navegador.
Perguntas técnicas
Como o posto percentil da turma é calculado?
Envie score e a lista scores da turma. A API conta as marcas estritamente abaixo da nota, divide por n e multiplica por 100. Essa fração exclusiva é percentile_rank.
Quanto custa a calculadora de posto percentil da turma?
A ferramenta do navegador é gratuita. Pedidos API usam saldo KIT pré-pago a US$ 0,002 por chamada correta; entrada inválida não é cobrada.