在写201312-2 ISBN的时候提交了好几次都会出来运行错误,后来改了if-else的顺序(即把else的条件写成if)就给对了。。。
先记录一下,有大佬明白什么问题求指正😢
所以可能要注意一下比较的时候用int还是用str
30分
ISBN = input()
# 语言-出版社-出版社编号-识别码
num = 1
sum = 0
for i in range(0, len(ISBN)-1):
c = ISBN[i]
if c=='-':
continue
sum+=(int(c)*num)
num+=1
sum %= 11
if sum == int(ISBN[-1]) or (sum==10 and ISBN[-1]=='X'):
print('Right')
else:
print(ISBN[0:-1], sum, sep='')
60分
ISBN = input()
# 语言-出版社-出版社编号-识别码
num = 1
sum = 0
for i in range(0, len(ISBN)-1):
c = ISBN[i]
if c=='-':
continue
sum+=(int(c)*num)
num+=1
sum %= 11
# 这里后面用X变量来存储sum%11的值也是60分
if sum==10: # 只增加了这一部分代码
sum = 'X'
if sum == int(ISBN[-1]) or (sum==10 and ISBN[-1]=='X'):
print('Right')
else:
print(ISBN[0:-1], sum, sep='')
100分:将if里面用int判断改成了用str判断
ISBN = input()
# 语言-出版社-出版社编号-识别码
num = 1
sum = 0
for i in range(0, len(ISBN)-1):
c = ISBN[i]
if c=='-':
continue
sum+=(int(c)*num)
num+=1
# sum %= 11
x = sum%11
if x==10:
x = 'X'
if str(x) == ISBN[-1]:
print('Right')
else:
print(ISBN[0:-1], x, sep='')