这个函数应该取一串数字(snum),然后取它应该从(indx)开始的索引,然后从(indx)开始,然后乘以下一个(dig)数字量并返回值。这是当前函数,应返回72,但返回41472。谢谢
def product(dig, indx, snum):
length = int(len(snum))
int(indx)
int(dig)
total = int(snum[indx])
for k in range((indx + 1), length):
for i in range(0, dig):
total = total * int(snum[k])
else:
return total
x = product(3, 5, '72890346')
print(x)
以下是应该做到的:
驱动程序代码:
在代码中,逻辑很少有问题。你不需要两个循环。这里,我们使用
slicing
操作来获得indx
和indx+dig
之间的字符,然后将得到的string
转换成int
并相乘相关问题 更多 >
编程相关推荐