ForHosting KIT · Mathematik

Chinesischer-Restsatz-Löser

Lösen Sie simultane Kongruenzen in einem Schritt: x ≡ 2 mod 3, x ≡ 3 mod 5 und x ≡ 2 mod 7 ergeben x ≡ 23 mod 105. Moduln mit gemeinsamen Teilern sind erlaubt, widersprüchliche Systeme werden gemeldet. Kostenlos in Ihrem Browser.

  • Kostenlos
  • Läuft in Ihrem Browser
  • Ohne Anmeldung
  • Ihre Daten bleiben auf Ihrem Gerät
Nutzen Sie es über WebAPIE-MailTelegramApp bald
Wenn Sie eingeben
Reste
2, 3, 2
Moduln
3, 5, 7
Erhalten Sie
X
23
Modul
105
Produkt
105
Anzahl
3

Der Pfad ist reine Ganzzahl-Arithmetik: kein Netzwerk, keine Zufälligkeit und keine Uhr.

Was der chinesische Restsatz aussagt

Ein System von Kongruenzen sucht eine einzige Zahl x, die bei der Division durch mehrere Teiler, die Moduln, jeweils einen bestimmten Rest lässt. Sind die Moduln paarweise teilerfremd, teilen also keine zwei einen gemeinsamen Faktor, gibt es genau eine Antwort zwischen null und dem Produkt der Moduln minus eins; alle weiteren folgen im Abstand dieses Produkts. Das klassische Beispiel x ≡ 2 mod 3, x ≡ 3 mod 5, x ≡ 2 mod 7 hat die einzige Klasse 23 modulo 105.

So arbeitet der Löser, und typische Fehler

Der Löser verbindet die Kongruenzen nacheinander und fügt jede neue in die bisher gefundene Antwort ein. Teilen zwei Moduln einen Faktor, prüft er zuerst, ob ihre Reste modulo dem größten gemeinsamen Teiler übereinstimmen; sonst meldet er, dass es keine Lösung gibt. Stimmen sie überein, wiederholt sich die Antwort im Abstand des kleinsten gemeinsamen Vielfachen statt des Produkts. Typische Fehler sind die Erwartung einer eindeutigen Antwort modulo dem Produkt trotz gemeinsamer Teiler, Reste und Moduln in unterschiedlicher Reihenfolge oder Anzahl und das Vergessen, dass ein negativer Rest einfach modulo seinem eigenen Teiler verkleinert wird.

Wo CRT-Systeme bei Studium, Krypto-Intuition und Code Anwendung finden

Lehrkräfte können Lösungsschlüssel für Arbeitsblätter mit simultanen Kongruenzen erzeugen, ohne undurchsichtigen Rechnern zu vertrauen, die Zwischen-ggTs verbergen. Wettbewerbspraxis braucht oft einen schnellen Offline-Löser, damit handschriftliche Arbeit in Sekunden geprüft werden kann. Kombinieren Sie diese Seite mit einem Koprimzahl-Prüfer, wenn Sie nur den ggT zweier Ganzzahlen benötigen, und mit Primfaktorzerlegung, wenn Sie die Primpotenzen hinter einem einzelnen Modul statt eines simultanen Systems benötigen.

Simultane Kongruenzen für Hausaufgaben und Wettbewerbe

Lösen Sie Lehrbuchsysteme wie x ≡ 2 mod 3, x ≡ 3 mod 5, x ≡ 2 mod 7 und verifizieren Sie die eindeutige Klasse modulo dem Produkt der Moduln.

Modulare Rekonstruktion in Lehr-Demos

Heben Sie Restlisten zurück zu einer einzigen Ganzzahlklasse, wenn Sie Ringisomorphismen, Kalenderrätsel oder Lehr-RSA-artige CRT-Schritte erklären.

Was kostet der Chinesischer-Restsatz-Löser?

Er ist auf dieser Seite kostenlos in Ihrem Browser.

Müssen die Moduln paarweise teilerfremd sein?

Nein. Paarweise teilerfremde Moduln liefern immer eine eindeutige Lösung modulo ihrem Produkt. Nicht teilerfremde Moduln werden akzeptiert, wenn Reste modulo jedem ggT übereinstimmen; andernfalls wird das System als inkonsistent zurückgewiesen.

Ist der Algorithmus zufällig?

Nein. Er nutzt deterministisches sukzessives CRT mit exaktem ganzzahligem ggT und modularen Inversen. Dieselben Reste und Moduln ergeben immer dasselbe x und denselben Modul.

Wie löse ich x ≡ 2 mod 3, x ≡ 3 mod 5 und x ≡ 2 mod 7?

Geben Sie die Reste 2, 3 und 2 und die Moduln 3, 5 und 7 in derselben Reihenfolge ein. Die Antwort ist 23, und jede Zahl, die sich von 23 um ein Vielfaches von 105 unterscheidet, passt ebenfalls.

Was passiert, wenn sich die Kongruenzen widersprechen?

Der Löser meldet, dass das System widersprüchlich ist, statt eine Antwort zu erfinden. Eine Lösung gibt es nur, wenn jedes Paar von Resten modulo dem größten gemeinsamen Teiler der beiden Moduln übereinstimmt.

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.

POSThttps://api.kit.forhosting.com/numth/chinese-remainder

Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.

curl -X POST https://api.kit.forhosting.com/numth/chinese-remainder \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"remainders":[2,3,2],"moduli":[3,5,7]}'
{
  "remainders": [
    2,
    3,
    2
  ],
  "moduli": [
    3,
    5,
    7
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.chinese_remainder",
  "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.

pro Anfrage$0.002

Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.

HTTPCodeBedeutung
401unauthorizedDer API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer).
402insufficient_balanceIhr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht.
404unknown_typeUnbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog.
429rate_limitedZu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt.

Der Chinesischer-Restsatz-Löser nimmt ein System simultaner Kongruenzen — x kongruent zu jedem Rest a_i modulo jedem Modul n_i — und liefert die eindeutige Lösungsklasse, wenn eine existiert. Sie geben parallele Arrays von Resten und Moduln an; die Engine fasst sie mit sukzessivem CRT zusammen, prüft die Konsistenz, wenn Moduln gemeinsame Faktoren haben, und meldet sowohl den Repräsentanten x zwischen null und Modul minus eins als auch den Modul der Lösungsklasse (das Produkt der n_i, wenn sie paarweise teilerfremd sind, andernfalls deren kleinstes gemeinsames Vielfaches).

Was der Chinesische Restsatz liefert und wann Systeme scheitern

Klassisch gibt es, wenn die Moduln paarweise teilerfremd sind, genau eine Restklasse modulo dem Produkt der n_i, die jede Kongruenz gleichzeitig erfüllt. Das berühmte Unterrichtstripel — x ≡ 2 mod 3, x ≡ 3 mod 5, x ≡ 2 mod 7 — ergibt x ≡ 23 mod 105. Dieses Werkzeug akzeptiert auch die allgemeine Form: Moduln müssen nicht paarweise teilerfremd sein. In diesem Fall existiert eine Lösung genau dann, wenn jedes Restpaar modulo dem ggT der entsprechenden Moduln übereinstimmt, und die Lösung ist eindeutig modulo dem kleinsten gemeinsamen Vielfachen aller n_i. Stimmen Reste nicht überein, schlägt die Anfrage mit invalid_input und einer Meldung fehl, die die Inkonsistenz benennt, statt ein falsches x zu erfinden. Die JSON-Antwort bei Erfolg enthält x, modulus (den CRT-Modul der Lösungsklasse), product (das rohe Produkt der Eingabemoduln), die auf null bis n_i minus eins reduzierten Reste, eine Kopie der Moduln und count. Fehlende Arrays, ungleiche Längen, nicht positive Moduln, Nicht-Ganzzahlen und Werte außerhalb des sicheren Ganzzahlbereichs schlagen ebenfalls mit invalid_input fehl, sodass fehlerhafte Tabellenzellen niemals zu stillen falschen Antworten werden.

Wie Reste und Moduln gelesen werden und wie sukzessives CRT exakt bleibt

Jeder Modul muss eine positive sichere Ganzzahl sein. Reste dürfen negativ sein und werden vor dem Zusammenführen in das kanonische Intervall reduziert. Intern beginnt die Engine bei der ersten Kongruenz und führt wiederholt die nächste zusammen: Gegeben x ≡ x0 mod m und x ≡ a mod n, berechnet sie g gleich ggT von m und n, weist das System zurück, wenn a minus x0 nicht durch g teilbar ist, und bildet dann die aktualisierte Lösung mit einem modularen Inversen von m über g modulo n über g und multipliziert den Modul mit n über g, um das neue kgV zu erhalten. Alle Multiplikationen sind abgesichert, damit das Produkt und der Zwischen-CRT-Modul innerhalb sicherer JavaScript-Ganzzahlen bleiben; überdimensionierte Produkte schlagen klar fehl, statt zu überlaufen. Die bevorzugten Felder sind remainders und moduli als gleich lange JSON-Arrays von Ganzzahlen. Die Aliase a, ai und residues werden remainders zugeordnet; n, ni und mods werden moduli zugeordnet, sodass Formulare, Query-Strings und ältere Notebooks einen einzigen Vertrag wiederverwenden können. Jeder Eintrag darf eine JSON-Ganzzahl oder eine Dezimal-Zeichenkette mit optionalem führendem Vorzeichen sein; Brüche, wissenschaftliche Notation und eingebettete Leerzeichen werden zurückgewiesen.

Wo CRT-Systeme bei Studium, Krypto-Intuition und Code Anwendung finden

Entwickler nutzen denselben Vertrag, um modulare Rekonstruktionen in Lehr-RSA-Demos zu validieren, um deterministische Testvektoren für Bibliotheken zur modularen Arithmetik zu erstellen, und um zu prüfen, dass eine Pipeline von Resten nach einer Schemaänderung noch zu einer einzigen Klasse zusammengeführt werden kann. Auf dieser Seite läuft die Berechnung vollständig in Ihrem Browser; über die API kostet jede erfolgreiche Lösung $0.002, eine fehlgeschlagene Validierung wird nicht berechnet, und nach der Antwort wird nichts gespeichert.

Deterministische Test-Fixtures für modulare Bibliotheken

Erzeugen Sie reproduzierbare CRT-Lösungen für Unit-Tests und CI-Assertions ohne von Hand berechnete Tabellen einzubetten, die von der Implementierung abweichen.

Was passiert, wenn das System inkonsistent ist?

Die Anfrage schlägt mit invalid_input und einer Meldung fehl, dass kein x das gesamte System erfüllt, weil Reste modulo dem ggT der Moduln nicht übereinstimmen.

Sind negative Reste erlaubt?

Ja. Reste dürfen negativ sein; sie werden vor der CRT-Zusammenführung auf den Bereich null bis n_i minus eins reduziert. Moduln müssen positive Ganzzahlen sein.

Vollständige KIT-Dokumentation lesen →