Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Roman Numerals by Ragnar
roman = ['M', 'CM', 'D', 'CD', 'C', 'XC', 'L', 'XL', 'X', 'IX', 'V', 'IV', 'I']
arabian = [1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1]
def checkio(data):
result = ""
for i in arabian:
if int(data / i) > 0:
result += "".join(roman[arabian.index(i)] for j in range(int(data / i)))
data -= int(data / i) * i
return result
#These "asserts" using only for self-checking and not necessary for auto-testing
if __name__ == '__main__':
assert checkio(6) == 'VI', '6'
assert checkio(76) == 'LXXVI', '76'
assert checkio(499) == 'CDXCIX', '499'
assert checkio(3888) == 'MMMDCCCLXXXVIII', '3888'
Nov. 14, 2020
Comments: