sk1935 发表于 2022-7-11 22:22:22

python 课后作业44

R2N = {'I':1, 'V':5, 'X':10, 'L':50, 'C':100, 'D':500, 'M':1000}
   
def roman2num(s):
    r = 0
    n = len(s)
    for i, ch in enumerate(s):
      v = rc
      if i < n-1 and v < R2N]:
            r -= v
      else:
            r += v
   
    return r;
   
s = input("请输入一个罗马字符:")
v = roman2num(s)
print(f"转换后的结果是:{v}")

这个v =rc【ch】
这个rc是什么

临时号 发表于 2022-7-12 12:12:39

应该是R2N吧,从头到尾都没有看见rc的定义
R2N = {'I':1,'V':5,'X':10,'L':50,'C':100,'D':500,'M':1000}

def roman2num(s):
    r = 0
    n = len(s)
    for i,ch in enumerate(s):
      v = R2N
      if i < n-1 and v < R2N]:
            r -= v
      else:
            r += v

    return r;

s = input("请输入一个罗马字符:")
v = roman2num(s)
print(f"转换后的结果是:{v}")
页: [1]
查看完整版本: python 课后作业44