Enable Javascript in your browser and then refresh this page, for a much enhanced experience.
First solution in Clear category for Roman Numerals by hypehr96
def zamien(cyfra,poz):
wynik = ""
if(poz==0):
if(cyfra==1):wynik="I"
if(cyfra==2):wynik="II"
if(cyfra==3):wynik="III"
if(cyfra==4):wynik="IV"
if(cyfra==5):wynik="V"
if(cyfra==6):wynik="VI"
if(cyfra==7):wynik="VII"
if(cyfra==8):wynik="VIII"
if(cyfra==9):wynik="IX"
if(poz==1):
if(cyfra==1):wynik="X"
if(cyfra==2):wynik="XX"
if(cyfra==3):wynik="XXX"
if(cyfra==4):wynik="XL"
if(cyfra==5):wynik="L"
if(cyfra==6):wynik="LX"
if(cyfra==7):wynik="LXX"
if(cyfra==8):wynik="LXXX"
if(cyfra==9):wynik="XC"
if(poz==2):
if(cyfra==1):wynik="C"
if(cyfra==2):wynik="CC"
if(cyfra==3):wynik="CCC"
if(cyfra==4):wynik="CD"
if(cyfra==5):wynik="D"
if(cyfra==6):wynik="DC"
if(cyfra==7):wynik="DCC"
if(cyfra==8):wynik="DCCC"
if(cyfra==9):wynik="CM"
if(poz==3):
for i in range(cyfra):
wynik+="M"
return wynik
def checkio(data):
k=len(str(data))-1
out = ""
for i in str(data):
out+=zamien(int(i),k)
k-=1
return out
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'
Nov. 20, 2016