本帖最后由 jackz007 于 2022-11-9 17:04 编辑 while a != 'STOP':
c . append(a)
a = input('请输入一个整数(输入STOP结束):')
. . . . . .
for i in range(n):
for j in range(i + 1 , n):
if c[i] + c[j] == target : # 这个不可能,c[i] + c[j] 是字符串,target 是整型数,二者不可比较
这个循环有逻辑缺陷for i in range(n):
for j in range(i + 1 , n):
当 i = n - 1 时,j = i + 1 = n 超出列表索引,显然不合理,应该改为下面这样for i in range(n - 1):
for j in range(i + 1 , n):
c = []
while True:
a = input('请输入一个整数(输入STOP结束) :')
if a != 'STOP' : c . append(int(a))
else : break
target = int(input('输入目标数:'))
for i in range(len(c) - 1):
for j in range(i + 1 , len(c)):
if c[i] + c[j] == target : print([i , j])
运行实况:D:\[00.Exerciese.2022]\Python>python x.py
请输入一个整数(输入STOP结束) :22
请输入一个整数(输入STOP结束) :33
请输入一个整数(输入STOP结束) :45
请输入一个整数(输入STOP结束) :18
请输入一个整数(输入STOP结束) :62
请输入一个整数(输入STOP结束) :88
请输入一个整数(输入STOP结束) :93
请输入一个整数(输入STOP结束) :72
请输入一个整数(输入STOP结束) :67
请输入一个整数(输入STOP结束) :19
请输入一个整数(输入STOP结束) :STOP
输入目标数:100
[1, 8]
D:\[00.Exerciese.2022]\Python>
|