Schaltjahre in einem Bereich
Geben Sie zwei Jahre ein und erhalten Sie alle Schaltjahre dazwischen, beide Grenzen eingeschlossen: Von 2000 bis 2024 sind es 7, beginnend mit 2000 und endend mit 2024. Jahrhundertjahre folgen der gregorianischen Regel, daher fehlt 1900 und 2000 zählt. Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- Startjahr
- 2.000
- Endjahr
- 2.024
- Jahresspanne
- 25
- Anzahl
- 7
- Regel
- Gregorian: year%4==0 and (year%100!=0 or year%400==0)
Schaltjahre fügen einen zusätzlichen Tag ein — den 29. Februar —, damit der bürgerliche Kalender mit dem tropischen Jahr im Einklang bleibt. Nach dem gregorianischen System, das heute der Großteil der Welt verwendet, ist ein Jahr ein Schaltjahr, wenn es durch vier teilbar ist, außer bei Jahrhundertjahren, die zusätzlich durch vierhundert teilbar sein müssen. Das heißt: 2000 ist ein Schaltjahr, 1900 nicht, und gewöhnliche Jahre wie 2024 und 2028 schon. Dieses Werkzeug nimmt ein inklusives Start- und Endjahr, durchläuft jedes Jahr des Bereichs mit einem reinen, deterministischen Schalttest und gibt sowohl die Anzahl als auch die geordnete Liste der Schaltjahre zurück. Wenn das Startjahr größer als das Endjahr ist, schlägt die Anfrage mit einem klaren Validierungsfehler fehl, statt die Grenzen still zu vertauschen.
Wie gregorianische Schaltjahre bestimmt werden
Die gregorianische Reform verfeinerte die ältere julianische Regel, nach der jedes vierte Jahr ein Schaltjahr war. Nach den gregorianischen Regeln ist ein Jahr Y genau dann ein Schaltjahr, wenn Y durch vier teilbar ist und Y außerdem nicht durch einhundert teilbar ist oder Y durch vierhundert teilbar ist. Kompakt formuliert: Schaltjahr, wenn Y modulo vier gleich null ist und (Y modulo einhundert ungleich null ist oder Y modulo vierhundert gleich null ist).
Jahrhundertjahre, die den Vierhundert-Test nicht bestehen — 1700, 1800, 1900, 2100 —, sind Gemeinjahre mit nur dreihundertfünfundsechzig Tagen, während 1600 und 2000 Schaltjahre bleiben. Diese Fähigkeit wendet die proleptische gregorianische Regel einheitlich auf jedes ganzzahlige Jahr von eins bis neuntausendneunhundertneunundneunzig an, im Einklang mit den übrigen Kalenderwerkzeugen im KIT-Katalog.
Die Implementierung ruft niemals das JavaScript-Date auf, liest niemals die Systemuhr und greift niemals aufs Netzwerk zu: Sie führt einen parse von zwei ganzzahligen Jahren aus, weist einen umgekehrten Bereich zurück und durchläuft dann das inklusive Intervall und sammelt jedes Jahr, das das Schalt-Prädikat erfüllt.
Wo Schaltjahres-Bereichslisten in der Praxis auftauchen
Schul- und Wettbewerbsaufgaben fragen ständig, wie viele Schaltjahre zwischen zwei Jahren liegen oder welche Jahre eines Jahrhunderts einen neunundzwanzigsten Februar enthalten; ein verlässliches Orakel, das Anzahl und vollständige Liste liefert, beschleunigt Bewertung und Demo-Vorbereitung. Produkt- und Betriebsteams, die mehrjährige Roadmaps, Retentionskohorten oder Abrechnungskalender bauen, müssen wissen, wann der Februar neunundzwanzig Tage hat, damit Zeitpläne, SLAs und Tagezählformeln korrekt bleiben. Software, die ICS-Dateien, Schulhalbjahreskalender oder Abrechnungszeiträume für lange Horizonte erzeugt, profitiert von einer reinen Funktion, die nie von der Host-Zeitzone oder den Eigenheiten des Date-Konstruktors abhängt.
Wenn Sie später Ordinalzahlen des Jahrestags, Wochenendzählungen zwischen zwei ISO-Daten oder julianische Tageszahlen benötigen, behandeln Sie diese als eigene Suchintentionen und Landings, statt diese Schaltjahres-Bereichsseite zu überladen.
Anwendungsfälle
Musterlösungen für Hausaufgaben und Wettbewerbe
Erzeugen Sie die geordnete Liste und die Anzahl der Schaltjahre zwischen zwei Jahren, damit Lehrkräfte und automatische Bewerter eine gemeinsame gregorianische Wahrheit teilen.
Mehrjährige Planungs- und Abrechnungskalender
Markieren Sie jeden 29. Februar in einer Produkt-Roadmap, Retentionskohorte oder einem Abrechnungshorizont — ohne zeitzonenabhängige Date-Fehler.
Häufige Fragen
Welche Schaltjahrregel verwendet dieses Werkzeug?
Die proleptische gregorianische: Ein Jahr ist ein Schaltjahr, wenn es durch 4 teilbar ist, außer Jahrhundertjahre, die durch 400 teilbar sein müssen. Also ist 2000 ein Schaltjahr, 1900 nicht, und 2024 schon.
Ist der Jahresbereich inklusiv?
Ein Einjahresbereich liefert entweder ein Schaltjahr oder eine leere Liste mit der Anzahl null.
Verwendet es das JavaScript-Date?
Nein. Der Algorithmus ist reine Ganzzahlarithmetik auf dem gregorianischen Schalt-Prädikat. Kein Date, kein Netzwerk, kein Zufall.
Was passiert, wenn das Startjahr nach dem Endjahr liegt?
Der Bereich wird mit einer klaren Meldung abgelehnt, statt stillschweigend vertauscht zu werden, sodass ein Tippfehler in einem der beiden Jahre sofort auffällt. Geben Sie zuerst das frühere Jahr ein; ein Bereich aus einem einzigen Jahr ist zulässig.
Zählen Start- und Endjahr mit?
Ja. Beide Grenzen gehören zum Bereich: Von 2000 bis 2024 umfasst er 25 Jahre, und sowohl 2000 als auch 2024 erscheinen in der Liste, weil beide Schaltjahre sind.
Ist 1900 ein Schaltjahr?
Nein. 1900 ist durch 100, aber nicht durch 400 teilbar und hat daher nur 365 Tage. Dasselbe gilt für 1700, 1800 und 2100, während 1600 und 2000 Schaltjahre sind.
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/date/leap-years-between \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"start_year":2000,"end_year":2024}'const res = await fetch("https://api.kit.forhosting.com/date/leap-years-between", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"start_year": 2000,
"end_year": 2024
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/leap-years-between",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"start_year": 2000,
"end_year": 2024
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/leap-years-between", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"start_year":2000,"end_year":2024}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"start_year":2000,"end_year":2024}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/leap-years-between", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"start_year": 2000,
"end_year": 2024
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.leap_years_between",
"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
Wie gregorianische Schaltjahre bestimmt werden
Das Ergebnis-JSON spiegelt die Grenzen, die Jahresspanne, die Anzahl, die aufsteigende Liste und eine kurze Regelzeichenkette wider, sodass Sie den Algorithmus prüfen können, ohne den Quelltext zu öffnen. Der Preis erfolgreicher API-Aufrufe beträgt die veröffentlichte Basis von $0.002 pro Element; Validierungsfehler verbrauchen kein Prepaid-Guthaben.
Was Sie senden und was Sie zurückbekommen
Beide sind Pflichtfelder und müssen endliche Ganzzahlen von eins bis neuntausendneunhundertneunundneunzig sein. Der Bereich ist inklusiv: Eine Anfrage von zweitausend bis zweitausendvier meldet jedes Schaltjahr unter zweitausend, zweitausendeins, zweitausendzwei, zweitausenddrei und zweitausendvier. Typische Prüfungen umfassen zweitausend bis zweitausendvierundzwanzig für moderne Jahrzehnte, achtzehnhundertsechsundneunzig bis neunzehnhundertvier, um zu zeigen, dass neunzehnhundert übersprungen wird, zweitausend aber nicht, und einen Einjahresbereich, in dem das einzig mögliche Schaltjahr dieses Jahr selbst ist. Senden Sie zwei ganzzahlige Felder namens start_year und end_year. Fehlende Felder, nicht numerische Zeichenketten, Fließkommazahlen, NaN, Infinity und Jahre außerhalb des zulässigen Bandes scheitern ebenfalls mit invalid_input und werden nicht berechnet. Bei Erfolg enthält die Antwort start_year, end_year, inclusive auf true, year_span gleich Ende minus Anfang plus eins, count gleich der Länge der Schaltjahresliste, leap_years als aufsteigendes Array von Ganzzahlen sowie die Zeichenketten rule und formula, die den gregorianischen Test beschreiben. Der Browser-Pfad läuft lokal und kostenlos; der API-Preis beträgt $0.002 pro erfolgreichem Element.
Wo Schaltjahres-Bereichslisten in der Praxis auftauchen
Da diese Fähigkeit ein reiner parse-Motor ist, beträgt der API-Preis die veröffentlichte Basis von $0.002 pro erfolgreichem Element, und eine fehlgeschlagene Validierung wird nicht berechnet.
Integrationsbeispiele
Tests von Datumsdimensionen im Data Warehouse
Verwenden Sie gregorianische Schaltlisten als Fixtures für ETL-Validierung, Fiskalkalender und proleptische Jahrstabellen über Jahrzehnte oder Jahrhunderte.
Technische Fragen
Was passiert, wenn start_year größer als end_year ist?
Die Anfrage schlägt mit invalid_input fehl. Die Grenzen werden nicht automatisch vertauscht, sodass eine umgekehrte Eingabe niemals still akzeptiert wird.
Was kostet das?
Das Browser-Werkzeug ist kostenlos und läuft lokal. API-Anfragen nutzen Prepaid-KIT-Guthaben zu $0.002 pro erfolgreichem Element; ungültige Eingaben werden nicht berechnet.