使用python的罗马数字转换器

我想问一下我是否应该继续这种想法/罗马数字转换器的方式,还是应该考虑使用diff代码。

这是我目前的想法:

d_roman = { "I":1, "V": 5, "X":10}

rntconvert = raw_input("Enter Roman Num: " )

x = len(rntconvert)
if rntcovert is in dictionary

    #print value of rntcovert

elif x==2

    #add the value of two roman numbers except if first roman number is lower than the next then it will be subtracted 
    #(ex. IX, first char has lower value than next char, so it's like,  10 - 1)

这可行吗?先感谢您。

编辑:即时通讯使用2.7说明是:我按返回的字符串数量分隔了求解

米歇尔·巴斯蒂奥内(Michele Bastione)

您的想法是正确的,但坦率地说,它的表达不佳,并且只能使用最多两个字母的字符串。将来可能会在尝试实现算法之前帮助制定更好的公式,但是暂时,我可以举一个例子说明如何实现该算法:

def from_roman_to_arabic(n):
    numerals={'I':1,'V':5,'X':10,'L':50,'C':100,'D':500,'M':1000}   
    adjust_values={'IV':2,'IX':2,'XL':20,'XC':20,'CD':200,'CM':200}  
    s=0
    for i in n: 
        s+=numerals[i]
    for j in adjust_values:
        if j in n: 
            s-=adjust_values[j]
    return s

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Swift中的罗马数字转换器

来自分类Dev

如何在罗马数字到小数转换器中得到结果?

来自分类Dev

C ++十进制到罗马数字转换器-无明显原因输出不正确的输出

来自分类Dev

使用开关盒将数字转换为罗马数字

来自分类Dev

在python中将罗马数字转换为整数

来自分类Dev

使用 xslt 将罗马数字转换为整数值

来自分类Dev

编写使用Python编程将给定整数转换为罗马数字的函数

来自分类Dev

将数字转换为罗马数字

来自分类Dev

将数字转换为罗马数字

来自分类Dev

罗马数字计算器

来自分类Dev

删除使用罗马数字编号

来自分类Dev

罗马到整数-但使用“不同”罗马数字系统

来自分类Dev

使用C ++中的find语句将罗马数字转换为数字

来自分类Dev

使用javascript将罗马数字转换为阿拉伯数字

来自分类Dev

将罗马数字转换为R中的数字

来自分类Dev

将罗马数字转换为R中的数字

来自分类Dev

将罗马数字转换为数字逻辑错误Java

来自分类Dev

简单的Python程序将罗马数字转换为国际系统

来自分类Dev

将整数转换为单词和罗马数字

来自分类Dev

将罗马数字转换为整数值?

来自分类Dev

将整数转换为罗马数字的基本程序?

来自分类Dev

在Java中将小数转换为罗马数字?

来自分类Dev

将罗马数字转换为整数值?

来自分类Dev

Excel-保持罗马数字大写的文本转换

来自分类Dev

在Java中将罗马数字转换为整数

来自分类Dev

使用数组将罗马数字转换为阿拉伯数字时遇到问题

来自分类Dev

以罗马数字显示日期

来自分类Dev

罗马数字到小数

来自分类Dev

以罗马数字显示日期