Es heißt in der Aufgabenstellung, die römischen Zahlen wären nur bis 3888 darstellbar, aber man kann doch 3999 als MMMCMXCIX darstellen. Ich sehe hierbei keine der beschriebenen Bedingungen verletzt! Außerdem finde ich auf Anhieb auch keine Zahl zwischen 3888 und 3999, die ich nicht darstellen könnte. Also ist das Limit von 3888 doch falsch, oder?
Nebenbei finde ich, dass die Bedingungen an die römischen Zahlen etwas schwammig formuliert sind. Es wären nach diesen Bedingungen z.B. auch DDD oder XCX (=100) römische Zahlen, aber meines Wissens sind sie das nicht!
Ist 3888 wirklich das Limit?
-
- Windoof-User
- Beiträge: 41
- Registriert: 14. Okt 2010 22:42
Re: Ist 3888 wirklich das Limit?
Ohne die Aufgabenstellung zu kennen:
Als wie römische Zahlen konvertieren mussten, hatten wir das gleiche Problem. Früher hat man es wohl nicht so genau genommen, wie eine Zahl zu schreiben ist.
Kurze Recherche ergibt:
http://www2.inetdirect.net/~charta/Roman_numerals.html
Demnach ist 4 999 = MMMMCMXCIX bei "normalen" Zeichen das größte was geht. Dann kommen noch so Dinge wie Überstrich hinzu und schon ist man im Millionenbereich.
3 888 erhält man wohl, wenn man ingesamt nur dreimal das gleiche Zeichen zulässt.
Ich würde einfach bei dem Programm genau angeben, welche Eingaben zugelassen sind. (Am besten so, dass das Verlangte auch noch erlaubt ist
)
Als wie römische Zahlen konvertieren mussten, hatten wir das gleiche Problem. Früher hat man es wohl nicht so genau genommen, wie eine Zahl zu schreiben ist.
Kurze Recherche ergibt:
http://www2.inetdirect.net/~charta/Roman_numerals.html
Demnach ist 4 999 = MMMMCMXCIX bei "normalen" Zeichen das größte was geht. Dann kommen noch so Dinge wie Überstrich hinzu und schon ist man im Millionenbereich.
3 888 erhält man wohl, wenn man ingesamt nur dreimal das gleiche Zeichen zulässt.
Ich würde einfach bei dem Programm genau angeben, welche Eingaben zugelassen sind. (Am besten so, dass das Verlangte auch noch erlaubt ist

Re: Ist 3888 wirklich das Limit?
Ja, da hast du in der Tat Recht. Es reicht, wenn dein Programm die Zahlen bis 3888 korrekt umrechnet. Wenn du magst, darf es aber natuerlich auch die restlichen Zahlen noch umwandeln.Matthias Senker hat geschrieben:Es heißt in der Aufgabenstellung, die römischen Zahlen wären nur bis 3888 darstellbar, aber man kann doch 3999 als MMMCMXCIX darstellen. Ich sehe hierbei keine der beschriebenen Bedingungen verletzt! Außerdem finde ich auf Anhieb auch keine Zahl zwischen 3888 und 3999, die ich nicht darstellen könnte. Also ist das Limit von 3888 doch falsch, oder?
Re: Ist 3888 wirklich das Limit?
Sind Zahlen wie MMMCMXCIXI (= 4000) oder XCX (= 100) als Eingabe für toDecimal zugelassen? In der Aufgabenstellung steht folgendes:
Allerdings ist I nicht höherwertig als I bzw. X nicht höherwertig als X und damit würde die Zahl gegen keine Regel aus der Aufgabenstellung verstoßen.Es ist nicht zulässig auf ein Subtraktionspaar ein einzelnes Zeichen folgen zu lassen, das eine höhere Wertigkeit als der
linke Teil des Subtraktionspaars hat.
Zuletzt geändert von -py- am 2. Nov 2011 08:51, insgesamt 1-mal geändert.
Re: Ist 3888 wirklich das Limit?
Man könnte dann aber auch die 400 so darstellen:
CCCXCIXI
zerlegt man aber die Zahlen nach modulo und prüft was wann wie oft hineinpasst erhält man
für 400 CD und für 4000 dann Mↁ, allerdings wurden höhere Zeichen als M im Praktika ja garnicht definiert
CCCXCIXI
zerlegt man aber die Zahlen nach modulo und prüft was wann wie oft hineinpasst erhält man
für 400 CD und für 4000 dann Mↁ, allerdings wurden höhere Zeichen als M im Praktika ja garnicht definiert