Calculadora de notas
Digite as notas com seus pesos e receba a média ponderada: 80 e 90 com o mesmo peso dão 85. Ou use a opção de prova final para saber quanto ainda falta para chegar à sua meta. 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
- Modo de cálculo
- Média ponderada
- Média
- 85
- Peso total
- 2
- Itens contabilizados
- 2
média ponderada grátis online
Duas perguntas: como você está e quanto falta
Quase toda dúvida sobre notas é de dois tipos. A primeira é saber como você está: cada prova, trabalho ou teste tem uma nota e um peso, e a média ponderada multiplica cada nota pelo seu peso, soma os resultados e divide pelo peso total. Duas notas de 80 e 90 com o mesmo peso dão 85. A segunda é planejar: com a nota geral desejada e o quanto a prova final conta, quanto é preciso tirar nela? A calculadora resolve essa conta e mostra também a sua média atual.
Os pesos e os erros mais comuns
Os pesos são relativos, então você pode usar porcentagens, pontos ou multiplicadores simples, desde que mantenha o mesmo tipo em todas as notas. Um erro frequente é fazer a média sem os pesos, o que dá a um teste pequeno a mesma força de uma prova grande. Outro é esquecer que, no cálculo da nota necessária, o peso da final é somado aos pesos já informados. Todo peso deve ser maior que zero, e a lista aceita até 50 notas.
Itens, pesos e validação
No modo average, o array items deve conter de 1 a 50 entradas, e um peso total de zero levanta um erro de divisão por zero. Qualquer item malformado, campo obrigatório ausente ou valor fora da faixa falha de forma limpa antes ou durante a soma, nunca como uma quebra não tipada.
Casos de uso
Acompanhamento de notas do curso
Combine questionários, trabalhos e provas com seus pesos em uma única média ponderada corrente.
Perguntas frequentes
Como a média ponderada é calculada?
A soma de cada score vezes seu weight, dividida pelo total dos pesos; os pesos devem ser maiores que zero.
Quanto preciso tirar na prova final para atingir minha meta?
Escolha a opção de prova final e informe a nota geral desejada, o peso da final e as notas que você já tem. A calculadora encontra a nota que a final precisa trazer e mostra também sua média atual.
Os pesos precisam somar 100?
Não. A soma de cada nota vezes o seu peso é dividida pelo total dos pesos informados, então pesos de 1 e 1 dão a mesma média que 50 e 50.
Um peso pode ser zero?
Não. Todo peso precisa ser maior que zero, e um peso zerado ou negativo é recusado. As notas podem ser qualquer número de até um milhão em valor absoluto.
Quantas notas posso informar?
De 1 a 50 na opção de média. Na opção de prova final, a lista de notas já obtidas é opcional, então você também pode partir só da meta e do peso da final.
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/dev/grade-calculator \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"mode":"average"}'const res = await fetch("https://api.kit.forhosting.com/dev/grade-calculator", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"mode": "average"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/grade-calculator",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"mode": "average"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/grade-calculator", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"mode":"average"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"mode":"average"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/grade-calculator", 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
{
"mode": "average"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.grade_calculator",
"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. |
Notas técnicas
Calcula uma média ponderada de itens avaliados ou, no modo final_needed, a nota que você precisa tirar em uma prova final ponderada para alcançar uma nota geral desejada.
Dois modos selecionados pelo campo mode
No modo average, ele recebe um array items de 1 a 50 entradas, cada uma um objeto com um score numérico e um weight positivo, e devolve a média ponderada: a soma de score vezes weight dividida pelo peso total. O exemplo — dois itens de 80 e 90 com peso 1 no modo average — devolve uma média de 85. dev.grade_calculator se ramifica conforme um campo mode obrigatório. A resposta inclui average, total_weight e items_count. No modo final_needed, você fornece uma nota geral desejada e o final_weight da prova restante, mais um array opcional items de notas já obtidas; ele resolve para a nota que você precisa tirar nessa final. A fórmula é (desired * (sum_of_weights + final_weight) - sum_of_score_times_weight) / final_weight, e a resposta devolve desired, final_weight, needed e current_average.
Itens, pesos e validação
Todo item é validado: score deve ser um número finito cujo valor absoluto não exceda 1e6, e weight deve ser um número finito estritamente maior que zero, então um peso zero ou negativo é rejeitado com um erro invalid_input tipado. No modo final_needed, items é opcional — uma lista omitida e um array vazio são tratados de forma idêntica, já que um formato declarativo descarta listas opcionais vazias — então, sem notas anteriores, a nota necessária é simplesmente a nota desejada. desired deve ser finito e final_weight deve ser finito e maior que zero.
Arredondamento, current_average e planejamento
Um valor needed acima do máximo que uma final pode conceder indica que a meta está fora de alcance; um needed negativo significa que a meta já está garantida. No modo final_needed, a resposta também traz current_average: a média ponderada das notas já informadas, ou null quando nenhum item anterior foi fornecido, de modo que o aluno vê tanto onde está quanto o que a final exige.
Casos de integração
Planejamento da prova final
Use final_needed para dizer a um aluno a nota exata exigida na final para alcançar uma nota-alvo.
Automação do diário de notas
Chame a API por aluno para acrescentar uma coluna de média ponderada ou de nota necessária em toda a turma.
Perguntas técnicas
Qual é a diferença entre os dois modos?
average devolve a média ponderada dos seus itens; final_needed resolve para a nota exigida em uma final ponderada para atingir uma nota geral desejada.
Preciso de notas anteriores para o modo final_needed?
Não. items é opcional ali; sem notas anteriores, a nota necessária é igual à nota desejada e current_average é null.
Como o arredondamento é controlado?
O campo decimals (0 a 4, padrão 2) arredonda os resultados half-up a partir do valor bruto, não por toFixed.
O que dispara um erro?
Um peso não positivo, um peso total de zero, um score fora da faixa ou um campo obrigatório ausente devolve invalid_input. API a partir de US$ 0,002.