作业:罗马数字转10进制数
使用python实现罗马数字转换为阿拉伯数字
-因为对python的学习还并不够透彻,无法自己很好的完成,所以我在网上搜索了资料,找到了相关的转换方法。参考过网上提供的代码,但并没有复制粘贴。
-成功实现了一个转换的程序,比网上的代码更人性化,每次执行的时候无需修改代码,可以在运行时每次根据需要来改变所需转换的数字。
-我大致理解了所使用的代码的意义,但因python水平较低,并不能完全理解
-经计算,我的学号320转为罗马数字是CCCXX,经python程序转换正确
-代码如下
class Solution(object):
def romanchange(self, s):
S=0
Represent={'M': 1000,'D': 500 ,'C': 100,'L': 50,'X': 10,'V': 5,'I': 1}
for i in range(len(s)-1):
if Represent[s[i]] < Represent[s[i+1]]:
S -= Represent[s[i]]
else:
S += Represent[s[i]]
S += Represent[s[-1]]
return S
if __name__ == '__main__':
a = Solution()
romun = input("请输入罗马数字,即可转换为10进制数")
NUM = a.romanchange(romun)
print(NUM)