题库 Python题库 题目列表 罗马数字问题: 罗马数字包含以下...
问答题

罗马数字问题:    

罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。  

27写做 XXVII,即为 XX + V + II 。通常情况下,罗马数字中小的数字在大的数字的右边。但也存在特例,例如 4 不写做 IIII而是 IV。数字 1 在数字 5 的左边,所表示的数等于大数 5 减去数 1 得到的数值 4。同样地,数字 9 表示为 IX。  

这个特殊的规则只适用于以下六种情况:  

I 可以放在 V (5) 和 X (10) 的左边,来表示 4 和 9。  

X 可以放在 L (50) 和 C (100) 的左边,来表示 40 和 90。  

C 可以放在 D (500) 和 M (1000) 的左边,来表示 400 和 900。 

现编写输入一个罗马数字,输出其整数结果,请编程实现上述功能,或补全代码。  

例如,当输入XXII时,输出22;当输入MCMXC时,输出1990.  

rmdict = {'I':1,'V':5,'X':10,'L':50,'C':100,'D':500,'M':1000} 
 rm = list(input("请输入正确的罗马数字:"))
 num, prew = 0, 1
 for ch in rm[::-1]:
    w =     ①    
    if prew > w: 
       num = num - w 
    else :
       num = num + w
    prew =     ②    
 print(  ③  )
题目信息
2021年 9月 编程题
-
正确率
0
评论
88
点击