GPA-Rechner
Tragen Sie jeden Kurs mit Buchstabennote und Credits ein: Ein A und ein B mit je 3 Credits ergeben 21 Qualitätspunkte auf 6 Credits, also einen GPA von 3,5. Der Schnitt ist nach Credits gewichtet, kein einfacher Mittelwert der Noten. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Berechnet einen Notendurchschnitt auf der üblichen 4,0-Skala aus einer Liste von Kursen, jeder mit einer Buchstabennote und Leistungspunkten, und liefert den gewichteten GPA, die Gesamtpunkte, die Qualitätspunkte und die Kursanzahl.
Von der Buchstabennote zum gewichteten GPA
Jede Buchstabennote hat auf der 4,0-Skala einen festen Wert: A ist 4,0, A- ist 3,7, B+ ist 3,3, B ist 3,0, B- ist 2,7, C+ ist 2,3, C ist 2,0, C- ist 1,7, D+ ist 1,3, D ist 1,0 und F ist 0. Der Rechner multipliziert diesen Wert mit den Credits des Kurses, addiert alle Produkte zu den Qualitätspunkten und teilt sie durch die Summe der Credits. Ein A und ein B mit je 3 Credits ergeben so 21 Punkte auf 6 Credits, also 3,5.
Feinheiten, die das Ergebnis verändern
Credits dürfen auch Bruchteile sein, etwa 1,5 für ein Labor oder ein halbes Seminar. Gerundet wird auf die gewählte Zahl von Nachkommastellen, standardmäßig zwei und höchstens drei, wobei ein Wert genau in der Mitte immer von null weg gerundet wird. Es sind 1 bis 50 Kurse auf einmal möglich. Typische Einsätze sind Studienübersichten, die den Schnitt sofort neu berechnen, und die Prüfung, ob ein gewichteter GPA die Schwelle für ein Stipendium erreicht.
Die 4,0-Notentabelle und die Punktgewichtung
Der Rechner wandelt jede Buchstabennote mit einer festen Tabelle in Qualitätspunkte auf der üblichen 4,0-Skala um: A ist 4,0, A- ist 3,7, B+ ist 3,3, B ist 3,0, B- ist 2,7, C+ ist 2,3, C ist 2,0, C- ist 1,7, D+ ist 1,3, D ist 1,0 und F ist 0.
Jeder Eintrag im courses-Array trägt eine grade und einen credits-Wert; die Engine multipliziert die Punkte jeder Note mit ihren credits, um gewichtete Qualitätspunkte zu erhalten, summiert diese, summiert die credits und dividiert, um einen punktgewichteten GPA zu erzeugen — kein naiver Durchschnitt der Notenpunkte.
Rundung, Nachkommastellen und gebrochene Leistungspunkte
Der Helfer rechnet sign * Math.floor(abs(x) * 10^decimals + 0.5) / 10^decimals, sodass ein Wert genau am Mittelpunkt stets von der Null weg gerundet wird. Der Parameter decimals steuert die Genauigkeit, ist standardmäßig 2 und muss eine ganze Zahl von 0 bis 3 sein — übergeben Sie 0 für einen ganzzahligen GPA oder 3 für feinere Abstufung beim Vergleich knapper Datensätze.
Die Prüfung läuft vor jeder Rechnung. courses muss ein Array mit zwischen 1 und 50 Elementen sein, sodass eine leere Liste und ein überdimensionierter Stapel beide schnell scheitern und den Tab nicht blockieren können.
Jeder Eintrag muss ein Objekt sein; eine grade außerhalb der elf Werte umfassenden Tabelle wirft 'grade inválido' (unbekannte Buchstaben werden nicht auf den nächsten Wert gerundet), und ein credits-Wert, der fehlt, nicht numerisch, nicht endlich oder null-oder-negativ ist, wirft 'credits inválido'. decimals außerhalb von 0-3 wirft 'decimals fuera de rango', und eine oberste Eingabe, die kein Objekt ist, wird rundweg abgelehnt.
Anwendungsfälle
Studierenden-Dashboards
Berechnen Sie einen Semester- oder kumulativen GPA im Augenblick neu, in dem sich eine Note oder ein Punktwert ändert.
Stipendienprüfungen
Prüfen Sie, ob ein gewichteter GPA eine Schwelle erreicht, bevor Sie einen Antrag genehmigen.
Häufige Fragen
Welche Notenskala wird verwendet?
Eine feste 4,0-Tabelle von A (4,0) bis F (0), einschließlich der Plus-/Minus-Stufen.
Ist der GPA punktgewichtet?
Ja. Die Punkte jeder Note werden mit ihren credits multipliziert, summiert und dann durch die Gesamtpunkte dividiert.
Können Kurse gebrochene Leistungspunkte haben?
Ja. credits darf jede positive endliche Zahl sein, etwa 1,5 für einen Halbkurs.
Was sind Qualitätspunkte?
Das sind die Notenpunkte jedes Kurses mal seine Credits, aufsummiert. Teilt man diese Summe durch alle Credits, ergibt sich der GPA, weshalb ein Kurs mit vielen Credits den Schnitt stärker bewegt als ein kleiner.
Was passiert, wenn ich eine Note außerhalb der Skala eingebe?
Sie wird abgelehnt, statt auf den nächsten Buchstaben gerundet zu werden. Nur die elf Noten der 4,0-Tabelle von A bis F zählen, groß oder klein geschrieben, a- und A- gelten also gleich.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/dev/gpa-calculator \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"courses":[{"grade":"A","credits":3}]}'const res = await fetch("https://api.kit.forhosting.com/dev/gpa-calculator", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"courses": [
{
"grade": "A",
"credits": 3
}
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/dev/gpa-calculator",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"courses": [
{
"grade": "A",
"credits": 3
}
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/dev/gpa-calculator", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"courses":[{"grade":"A","credits":3}]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"courses":[{"grade":"A","credits":3}]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/dev/gpa-calculator", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"courses": [
{
"grade": "A",
"credits": 3
}
]
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "dev.gpa_calculator",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Die 4,0-Notentabelle und die Punktgewichtung
Die Antwort liefert gpa, total_credits (die Summe aller credits), quality_points (die summierten Notenpunkte) und courses_count. Bei einem A über 3 credits und einem B über 3 credits ist quality_points 21, total_credits 6 und gpa 3,5.
Rundung, Nachkommastellen und gebrochene Leistungspunkte
Noten werden ohne Beachtung der Groß- und Kleinschreibung gelesen, weil die Eingabe vor dem Nachschlagen in Großbuchstaben umgewandelt wird, sodass 'a-' und 'A-' gleichwertig sind. credits darf jede positive endliche Zahl sein, auch gebrochene Gewichte wie 1,5, sodass Sie Praktika und Halbkurs-Seminare abbilden können. total_credits wird als exakte Summe der credits zurückgegeben, während gpa und quality_points beide auf die gewählten decimals gerundet werden.
Integrationsbeispiele
Automatisierung im Prüfungsamt
Verarbeiten Sie Notenlisten stapelweise über die API, um offizielle GPAs deterministisch zu buchen.
Technische Fragen
Wie viele Kurse kann ich einreichen?
Zwischen 1 und 50 je Anfrage; außerhalb dieses Bereichs gibt es invalid_input zurück.
Ist es kostenlos?
Ja im Browser-widget; die API führt dieselbe Logik ab $0.002 je Aufruf aus.