The front of old buildings sometimes show the year when they were built in roman numbers. These number are rather confusing and not easy to understand, Can you make a program that can translate any string with any roman number between 0 to 3999 back a decimal number? (an empty string should return zero).
I found this even more challenging than the reverse problem (problem 63 Encode Roman numbers) which I liked a lot and was obviously the inspiration of this problem.
Examples:
- 'XXIII' should return 23 (XX=20 III=3)
- 'MMXXI' should return 2021 (MM=2000 XX=20 I=1)
- 'MDCLXVI' should return 1666 (MDC =1600 LX=60 VI=6)
- 'CMXCIX' should return 999 (CM=900,XC=90,IX=9)
- '' (empty string) should return 0
Only integer numbers between 0 and 3999 can be handled.
Solution Stats
Problem Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers18
Suggested Problems
-
4519 Solvers
-
Find third Side of a right triangle given hypotenuse and a side. No * - or other functions allowed
253 Solvers
-
Split a string into chunks of specified length
2159 Solvers
-
Make a vector of prime numbers
972 Solvers
-
Return fibonacci sequence do not use loop and condition
877 Solvers
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!