15 lines
509 B
Python
15 lines
509 B
Python
roman_values = (('I',1), ('IV',4), ('V',5), ('IX',9),('X',10),('XL',40),('L',50),('XC',90),('C',100),
|
|
('CD', 400), ('D', 500), ('CM', 900), ('M',1000))
|
|
|
|
def roman_value(roman):
|
|
total=0
|
|
for symbol,value in reversed(roman_values):
|
|
while roman.startswith(symbol):
|
|
total += value
|
|
roman = roman[len(symbol):]
|
|
return total
|
|
|
|
if __name__=='__main__':
|
|
for value in "MCMXC", "MMVIII", "MDCLXVI":
|
|
print('%s = %i' % (value, roman_value(value)))
|