Skip to main content

Roman Numeral Converter

Convert numbers to Roman numerals and Roman numerals to numbers.

Geprüft von · Zuletzt geprüft

Roman Numeral

Den Römische-Zahlen-Konverter verwenden

  1. Richtung wählen mit den Tabs: Zahl → Römisch konvertiert eine ganze Zahl in ihre römische Form; Römisch → Zahl macht das Umgekehrte.
  2. Den Wert eingeben. Zahlen müssen ganze Zahlen im Bereich 1-3999 sein; römische Ziffern dürfen nur I, V, X, L, C, D und M (oder deren Kleinbuchstaben-Äquivalente) verwenden.
  3. Das Ergebnis sofort ablesen; die Konvertierung läuft bei jedem Tastendruck, sodass keine Schaltfläche gedrückt werden muss. Ungültige Eingaben zeigen eine kurze Meldung statt stillschweigend nichts zu tun.
  4. Die Ausgabe kopieren mit der Kopiertaste oder Markieren und Strg+C. Der Wert ist Klartext, geeignet zum Einfügen in ein Dokument, ein Wiki oder eine Chat-Nachricht.
  5. Richtung umschalten zur Verifizierung; das Hin- und Herkonvertieren einer Ziffer durch beide Richtungen sollte dieselbe kanonische Form zurückgeben (Kleinbuchstaben-Eingabe wird in Großbuchstaben normalisiert).

Wie Parser und Emitter funktionieren

Das Ausgeben einer Ziffer aus einer Zahl verwendet eine Greedy-Symboltabelle, die Werte mit ihren Zeichen in absteigender Reihenfolge paart: M=1000, CM=900, D=500, CD=400, C=100, XC=90, L=50, XL=40, X=10, IX=9, V=5, IV=4, I=1. Der Algorithmus subtrahiert wiederholt den größten passenden Wert und fügt sein Zeichen an, was immer die standardmäßige subtraktive Form erzeugt (kein IIII für 4, kein VIIII für 9). Dies ist dieselbe Tabelle, die von jeder Standard-Bibliotheksimplementierung der Konvertierung verwendet wird.

Das Parsen einer Ziffer ist ein Links-nach-Rechts-Scan: Wenn das aktuelle Symbol weniger wert ist als das nächste, subtrahiere; sonst addiere. Nach Abschluss des Scans führt der Parser einen Validierungsschritt durch, der prüft, dass subtraktive Paare aus der erlaubten Menge stammen (IV, IX, XL, XC, CD, CM), dass I/X/C höchstens dreimal aufeinanderfolgend vorkommen und dass V/L/D höchstens einmal vorkommen. Eine Eingabe wie IIII oder VV wird abgelehnt, obwohl eine naive Links-nach-Rechts-Summe noch die richtige Zahl zurückgeben würde. All dies läuft im Browser via einer kleinen TypeScript-Funktion; es gibt keinen Netzwerk-Roundtrip, und der Zustand lebt nur in der Komponente.

Wo römische Ziffern noch vorkommen

  • Formatierung von Kapitelnummern in einem Buch, Ordinalzahlen für Monarchen (Elisabeth II.) oder Gliederungsebenen in einem Rechtsdokument.
  • Lesen von Urheberrechtsdaten in Film- und TV-Abspannen (MCMXCIX für 1999).
  • Nummerierung von Super Bowls, Olympischen Spielen und Papst-Namen.
  • Entschlüsselung von Inschriften an alten Gebäuden, Uhren und Grabsteinen.
  • Katalogisierung von Werken in klassischen Musikpartituren (Symphonienummern, Opus-Nummern).
  • Hinzufügen eines vintage-Elements zu einem Typografie-Mockup oder einer Hochzeitseinladung.

Häufige Verwechslungen

  • IIII vs. IV auf Zifferblatt-Uhren. Viele analoge Uhren zeigen 4 als IIII für ästhetisches Gleichgewicht mit VIII auf der gegenüberliegenden Seite. Dies ist nicht standardmäßig nach der üblichen subtraktiven Regel; das Tool gibt IV aus.
  • Kein null. Die Römer hatten keine Ziffer für null. Das Tool lehnt 0 als Eingabe für das Integer-Feld ab, da keine Ausgabe existiert.
  • Subtraktive Paare sind begrenzt. Nur IV, IX, XL, XC, CD, CM sind erlaubt. IL für 49 sieht clever aus, ist aber ungültig; die korrekte Form ist XLIX.
  • Wiederholungsgrenze. Ein einzelnes Zeichen darf höchstens dreimal wiederholt werden (III ist 3, MMM ist 3000). Viermal in Folge ist ein Parse-Fehler.
  • Groß- und Kleinschreibungs-unempfindliche Eingabe. Kleinbuchstaben xiv werden intern in XIV normalisiert, aber in der kanonischen Großschreibung in der Ausgabe angezeigt.
  • Leerzeichen und Satzzeichen innerhalb einer Ziffer werden abgelehnt; der Parser verlangt eine saubere ununterbrochene Folge gültiger Zeichen.

Eine kurze Geschichte der Symbole

Römische Ziffern entwickelten sich aus etruskischen Strichzeichen und wurden während der römischen Republik standardisiert. Die heute gebräuchlichen Formen - I, V, X, L, C, D, M - wurden in der Spätantike kanonisch und überlebten in der europäischen Buchhaltung bis in die Renaissance. Fibonaccis Liber Abaci (1202) befürwortete das hinduisch-arabische Dezimalsystem, das römische Ziffern für die Arithmetik schließlich verdrängte, weil die Stellenwert-Notation umfangreiche Berechnungen ermöglicht. Die Obergrenze von 3999 ergibt sich daraus, dass vier M (MMMM) gegen die Wiederholungsregel verstoßen und klassische römische Texte die Überstrich-Notation (ein Vinculum) zur Multiplikation einer Ziffer mit 1000 verwendeten - also ist ein M mit Überstrich eine Million. Unicode kodiert Ziffern U+2160 bis U+2188 einschließlich der Vinculum-Formen, aber die meisten Konverter (einschließlich dieses) bleiben bei 1-3999 mit den einfachen ASCII-Buchstaben.

Wo andere Tools besser abschneiden

Für großskala programmatische Konvertierung ist ein Einzeiler in deiner Programmiersprache einfacher: Pythons roman-Paket, das numerals-roman-Crate in Rust oder Dutzende Stack-Overflow-Snippets in JavaScript. Microsoft Excel hat ROMAN() und ARABIC(), obwohl Excels ROMAN ein zweites Argument akzeptiert, das zwischen fünf Stilkombinationen wählt (klassisch, präzis usw.) - mehr als die meisten Nutzer benötigen. Für überstrichene Vinculum-Formen oder mittelalterliche Varianten wie den Apostrophus bietet kein Browser-Tool vollständige Wiedergabe; du benötigst ein Satzsystem wie LaTeX mit einem spezialisierten Paket. Dieser Konverter gewinnt, wenn du einen einzelnen Wert hast, die Antwort in unter einer Sekunde möchtest und den Browser nicht verlassen willst.

Häufig gestellte Fragen

Warum ist der Bereich auf 1-3999 begrenzt?

Mit nur sieben Grundzeichen (I, V, X, L, C, D, M) und der Regel, dass ein Zeichen maximal dreimal wiederholt werden darf, ist der größte darstellbare Wert MMMCMXCIX = 3999. Für größere Zahlen verwendeten die Römer das <em>Vinculum</em>, einen waagerechten Strich über einem Zeichen zur Multiplikation mit 1000, und den <em>Apostrophus</em> für noch größere Werte; keines davon ist Teil moderner ASCII-Konventionen für römische Ziffern. Das Tool hält sich an den Bereich 1-3999, den die meisten Softwareanwendungen und Stilrichtlinien erwarten.

Was ist mit null und negativen Zahlen?

Die römische Zivilisation hatte kein Zeichen für null - dieses Konzept kam mit den hinduisch-arabischen Ziffern durch Fibonacci nach Europa. Negative Zahlen hatten ebenfalls keine Darstellung. Das Tool lehnt sowohl 0 als auch negative Zahlen in der Eingabe ab, statt eine nicht standardmäßige Kodierung zu erfinden. Wenn du das Fehlen von etwas in einem römisch- ziffrigen Kontext darstellen musst, empfehlen Stilrichtlinien, die Position leer zu lassen oder das Wort <em>nulla</em> zu verwenden.

Werden die Eingaben jemals übertragen?

Nein. Der Konverter ist eine Preact-Insel, die seinen Parser und Emitter vollständig in deinem Tab ausführt. Kein Netzwerkanfrage übermittelt den von dir eingegebenen Wert, kein Analytics-Ereignis zeichnet ihn auf, und kein Speicher persistiert ihn zwischen Sitzungen. Das Kopieren in die Zwischenablage ist eine lokale Browser-API, kein Serveraufruf.

Warum steht IIII auf einem Zifferblatt, aber IV hier?

Die Zifferblatt-Konvention verwendet IIII an der 4-Position für eine symmetrische Optik mit VIII an der 8-Position, damit das Zifferblatt visuell ausgewogen wirkt. Dies ist kosmetisch und entspricht nicht dem strikten subtraktiven Standard, der durch den römischen Kalender und die meisten Stilrichtlinien (Chicago Manual of Style, MLA) festgelegt ist. Der Konverter gibt das standardmäßige IV aus; wenn du IIII für ein Uhr-Mockup brauchst, bearbeite die Ausgabe manuell.

Wie lehnt der Parser ungültige Ziffern wie IIII oder VV ab?

Nach einem Links-nach-Rechts-Scan, der Werte summiert (ein kleineres Symbol vor einem größeren wird als Subtraktion behandelt), führt der Parser einen Regex-basierten Validierungsschritt durch. Er prüft, dass I, X und C höchstens dreimal aufeinanderfolgend vorkommen, dass V, L und D höchstens einmal vorkommen, und dass nur die erlaubten subtraktiven Paare IV, IX, XL, XC, CD und CM verwendet werden. Eine Eingabe wie IIII scheitert an der Wiederholungsprüfung; VV scheitert an der Einzel-Auftreten-Prüfung für V.

Was passiert, wenn ich römische Ziffern in Kleinbuchstaben wie mmxxiv einfüge?

Der Parser normalisiert vor der Auswertung in Großbuchstaben, sodass mmxxiv als MMXXIV behandelt wird und 2024 zurückgibt. Die Ausgabe wird immer in kanonischen Großbuchstaben angezeigt, da dies der überwiegenden typografischen Konvention entspricht; wenn du eine Kleinbuchstaben-Ausgabe möchtest, wende nach dem Kopieren eine Texttransformation an.

Unterstützt der Konverter überstrichene (Vinculum-)Formen?

Nein. Die Überstrich-Notation (ein waagerechter Strich über einem Zeichen zur Multiplikation mit 1000) ist ein Unicode-Kombinationszeichen oder eine typografische Dekoration, deren Unterstützung über Schriften und Zwischenablagen hinweg inkonsistent ist. Für sehr große römische Zahlen benötigst du ein Satzsystem (LaTeX mit dem <em>romannum</em>-Paket oder einen Unicode-bewussten Editor, der U+0305 Combining Overline unterstützt).

Gibt es einen Unicode-Codepunkt für römische Ziffern?

Ja - U+2160 bis U+2188 kodieren römische Ziffern I bis L sowie diverse Ligaturen und archaische Formen. Die meisten Systeme rendern sie ohnehin als normale lateinische Buchstaben, da sie visuell identisch sind. Der Konverter gibt die einfachen ASCII-Buchstaben aus, da sie in jeder Schrift identisch gerendert werden und sauber kopiert werden können. Wenn du speziell die Unicode-Codepunkte benötigst, ersetze sie nach dem Kopieren.

Warum wird ein Greedy-Algorithmus für die Konvertierung verwendet?

Die Symboltabelle (M, CM, D, CD, ..., I) ist so konstruiert, dass bei jedem Schritt der größte anwendbare Wert eine eindeutige kanonische Ziffer erzeugt. Eine Greedy-Subtraktion vom verbleibenden Wert ist sowohl der einfachste als auch der korrekte Algorithmus; kein Lookahead oder Backtracking ist erforderlich. Nicht-Greedy-Ansätze würden nicht-kanonische Ausgaben wie VIIII erzeugen.

Kann ich ein Jahr wie 2024 konvertieren und das Ergebnis in ein Dokument einfügen?

Ja. 2024 ergibt MMXXIV. Für Jahre jenseits von 3999 (wenn du ein optimistisch fernes Zukunftsjahr eines Films angibst) wird das Tool ablehnen; andernfalls ist die Ausgabe bereit zum Einfügen in eine Titelkarte, eine Urheberrechtszeile oder eine Hochzeitseinladung. Datumsangaben für Film- und TV-Urheberrechte in römischen Ziffern sind der häufigste reale Anwendungsfall.

Ist dies ein römischer Zahlrechner oder nur ein Konverter?

Es ist ein Konverter, kein Rechner. Ein römischer Zahlenrechner würde es erlauben, Arithmetik in römischer Form durchzuführen (XII + IV = XVI). Dieses Tool konvertiert Zahlen in römische Ziffern und römische Ziffern in Zahlen; um zwei Ziffern zu addieren, würde man jede in eine Dezimalzahl konvertieren, sie dezimal addieren und dann zurückkonvertieren. Das ist schneller und zuverlässiger als die subtraktive Notation durch eine lange Summe zu verfolgen.

Kann es Zahlen in römische Ziffern in beide Richtungen in derselben Sitzung konvertieren?

Ja. Verwende den Tab-Umschalter oben, um zwischen der Konvertierung von Zahl zu römischer Ziffer und römischer Ziffer zu Zahl zu wechseln. Ein Hin- und Herkonvertieren eines Werts durch beide Richtungen gibt die kanonische Form zurück, was als Plausibilitätsprüfung nützlich ist, wenn du nicht sicher bist, ob eine Eingabe wie xiv wohlgeformt ist.

Mehr Math & Calculators