Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Roman Numerals by janusztracz73ms
def checkio(data):
skon =""
if data//1000 == 1:
skon += "M"
if data//1000 == 2:
skon += "MM"
if data//1000 == 3:
skon += "MMM"
data = data % 1000
if data >= 900:
data -= 900
skon += "CM"
if data >= 500:
data -= 500
skon += "D"
if data > 399 and data < 500:
data -= 400
skon += "CD"
if data // 100 == 1:
skon += "C"
if data // 100 == 2:
skon += "CC"
if data // 100 == 3:
skon += "CCC"
data = data % 100
if data >= 90:
data -= 90
skon += "XC"
if data >= 50:
data -= 50
skon += "L"
if data > 39 and data < 50:
data -= 40
skon += "XL"
if data // 10 == 1:
skon += "X"
if data // 10 == 2:
skon += "XX"
if data // 10 == 3:
skon += "XXX"
data = data % 10
if data >= 9:
data -= 9
skon += "IX"
if data >= 5:
data -= 5
skon += "V"
if data > 3 and data < 5:
data -= 4
skon += "IV"
if data // 1 == 1:
skon += "I"
if data // 1 == 2:
skon += "II"
if data // 1 == 3:
skon += "III"
return skon
if __name__ == '__main__':
#These "asserts" using only for self-checking and not necessary for auto-testing
assert checkio(6) == 'VI', '6'
assert checkio(76) == 'LXXVI', '76'
assert checkio(499) == 'CDXCIX', '499'
assert checkio(3888) == 'MMMDCCCLXXXVIII', '3888'
Oct. 21, 2016