Mary_99

roman to integer

Mar 5th, 2020
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.95 KB | None | 0 0
  1. print("Conversion from roman to arabic notation")
  2. class Conversion:
  3.     def convertionFunction(self, s:str) -> int:
  4.         arabicConversion = {'M':1000, 'D':500, 'C':100, 'L':50, 'X':10, 'V':5, 'I':1}
  5.         previousCharacter = 0
  6.         currentCharacter = 0
  7.         arabicNumber = 0
  8.         for i in range(len(s)):
  9.             currentCharacter = arabicConversion[s[i]]
  10.             if currentCharacter > previousCharacter:
  11.                 arabicNumber = arabicNumber + currentCharacter - 2*previousCharacter
  12.             else:
  13.                 arabicNumber += currentCharacter
  14.             previousCharacter = currentCharacter
  15.         return arabicNumber
  16. print(Conversion().convertionFunction("MMMCCCXXXIII"))
  17. print(Conversion().convertionFunction("MCXLIV"))
  18. print(Conversion().convertionFunction("MCMXCIX"))
  19. print(Conversion().convertionFunction("MCV"))
  20. print(Conversion().convertionFunction("XCIX"))
  21. print(Conversion().convertionFunction("MMMIX"))
Add Comment
Please, Sign In to add comment