Erstellen Sie einen Basisrechner für römische Ziffern.
Bedarf
- Unterstützt
+
,-
,*
,/
- Eingabe und Ausgabe sollten nur ein Subtrahiererpräfix pro Symbol erwarten (dh 3 kann nicht sein,
IIV
weil es zweiI
davor gibtV
) - Die Handhabung des Subtraktion Prinzips in Ein- und Ausgang muss bei Mindestunterstützung moderner Standard Konventionen, in denen nur Zehnerpotenzen sind von größeren Zahlen abgezogen (zB
I
,X
,C
sind erforderlich , Subtrahierern aber nichtV
,L
,D
) und Subtraktion wird nie von einer Reihe mehr getan , als 10x der Subtrahierer (zBIX
muss unterstützt werden,IC
ist aber nicht erforderlich). - Eingabe und Ausgabe sollten in der Reihenfolge des Werts von links nach rechts erfolgen, beginnend mit dem größten (dh 19 =
XIX
nichtIXX
, 10 ist größer als 9). - Von links nach rechts, kein Operator-Vorrang, als ob Sie einen Handrechner verwenden würden.
- Unterstützt die Eingabe / Ausgabe ganzer positiver Zahlen zwischen 1-4999 (keine Notwendigkeit für V̅)
- Keine Bibliotheken, die römische Zahlen für Sie konvertieren
Damit Sie sich entscheiden
- Groß- und Kleinschreibung
- Leerzeichen oder keine Leerzeichen bei der Eingabe
- Was passiert, wenn Sie eine dezimale Ausgabe erhalten? Abschneiden, keine Antwort, Fehler usw.
- Was tun bei Ausgaben, die Sie nicht verarbeiten können? Negative oder Zahlen sind zu groß, um gedruckt zu werden.
- Ob eine liberalere Verwendung des Subtraktionsprinzips als die Mindestanforderung unterstützt werden soll.
Extra Gutschrift
- -50 - Bis zu 99999 oder größer handhaben. Symbole müssen ein Vinculum enthalten
Sample Input / Output
XIX + LXXX (19+80)
XCIX
XCIX + I / L * D + IV (99+1/50*500+4)
MIV
Der kürzeste Code gewinnt.
IM = 999
gewünscht?
IM
. Ob die Ausgabe IM
oder CMXCIX
für 999 ist, liegt bei Ihnen. Beides entspricht den Anforderungen.