Преобразование римских цифр в десятичную python - PullRequest
0 голосов
/ 13 июля 2020

Я пытался преобразовать римский в десятичный, используя следующий код. Кажется, он работает правильно согласно logi c, но когда я запускаю, он показывает ложные результаты, когда я беру тестовые примеры, такие как «MDCCXCVI» или «MCMXCIV»

Вот код .

enter code here
    roman = {'I':'1','V':'5','X':'10','L':'50','C':'100','D':'500','M':'1000'}
    z=0
    for i in range(len(s) - 1):
        if roman[s[i]] < roman[s[i+1]]:
            z -= int(roman[s[i]])
        else:
            z += int(roman[s[i]])
    return z + int(roman[s[-1]])
...