这里我有以下代码:
N = 5
X = [3,-4,4,-3,4]
Y = 0
U = 0
V = 0
T=[]
K=[]
T.append(0)
K.append(0)
i = 1
imin = i-1
while (i<=N):
T.append(T[i-1]+X[i])
if T[i]>0:
if T[i-1]>0:
K.append(K[i-1])
else: K.append(i)
else:
K.append(i)
i += 1
Y = 0
U = 0
V = 0
print(T)
while(i!=N):
if T[i]>Y:
Y = T[i]
U = K[i]
V = i
i+=1
问题是,由于indexeror,代码不能传递t.append(t[i-1]+X[i])行。 例如,在代码的开头,T[i-1]是T[0],它已经被定义为0。X[0]也被定义为3。 那有什么问题
谢谢所有帮助我的人
将行
while (i<=N):
更改为while (i<N):
,错误将不再发生。但是,我不确定这是否提供了预期的结果,因为您还没有指定要执行的操作循环一直到
i=5
,X
的最后一个有效元素是X[4]
X[5]
是导致IndexError
升高的原因相关问题 更多 >
编程相关推荐