XBTHD 发表于 2024-4-2 09:45:53

6

nums = []

isInput = True
while isInput == True:
    x = input("请录入一个整数(输入STOP结束):")
    if x != "STOP":
      nums.append(int(x))
    else:
      isInput = False

target = int(input("请录入目标整数:"))

isFind = False
n = len(nums)
for i in range(n):
    for j in range(i+1, n):
      if nums + nums == target:
            print()
            isFind = True

if isFind == False:
    print("找不到!")

FishC 发表于 2024-4-2 09:46:07

在您提供的代码中,有几个错误需要修正:

1. 在定义nums列表时,需要赋予一个初始值。可以将其定义为一个空列表。
2. 在判断两个数之和是否等于目标整数时,应该是`nums + nums`,而不是`nums + nums`。
3. 在未找到符合条件的情况下,应该输出"找不到!"。

以下是修正后的代码:

nums = []

isInput = True
while isInput:
    x = input("请录入一个整数(输入STOP结束):")
    if x != "STOP":
      nums.append(int(x))
    else:
      isInput = False

target = int(input("请录入目标整数:"))

isFind = False
n = len(nums)
for i in range(n):
    for j in range(i+1, n):
      if nums + nums == target:
            print(f"找到两个数字的和等于目标整数 {target},它们是{nums}和{nums}")
            isFind = True

if not isFind:
    print("找不到!")

这样运行程序后,会提示您输入一系列整数,直到输入"STOP"为止。然后再输入一个目标整数。程序会检查列表中的两个数之和是否等于目标整数,并输出找到的结果或者"找不到!"。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: 6