罗马数字转阿拉伯数字

1.罗马数字是否为位置计数及其缺点
答:罗马数字不是位置计数;
缺点:不能用罗马数字表示0,罗马数字是有限的,最多表示到3999,而且书写较繁琐,缺乏直观性

2.八位学号转化罗马数字
2020 ———— MMXX
1229 ———— MCCXXIX

3.利用Python写转化程序
借鉴如下:

def intToRoman(self, num):
"""
:type num: int
:rtype: str
"""
arabic = [1000, 900, 500, 400, 100, 90, 50, 40, 10, 9, 5, 4, 1]
roman = ['M', 'CM', 'D', 'CD', 'C', 'XC', 'L', 'XL', 'X', 'IX', 'V', 'IV', 'I']
ret = ''
i = 0
while num:
yu = num // arabic[i]
ret += roman[i] * yu
num = num - yu * arabic[i]
i += 1
return ret

posted @ 2020-10-18 17:50  20201229赵斌  阅读(196)  评论(1编辑  收藏  举报