本帖最后由 jackz007 于 2022-11-3 22:51 编辑
因为要通过循环寻找目标数,那么,循环完成后,如何知道是否已经找到呢,那就是需要设置一个标志性的变量,来指示寻找结果,isFind 就是这个标志变量。import random
nums = []
for i in range(10000): # 这个循环为列表 num 产生 10000 个值在 1 ~ 65535 之间的随机数元素
x = random . randint(1 , 65535)
nums . append(x)
target = int(input("请录入目标整数:")) # 输入一个需要查找的目标数
isFind = False # isFine 标志变量先初始化为 False
n = len(nums) # n = nums 中的元素数量 = 10000
for i in range(n - 1): # 外层循环循环 9999 次,这里【有错】,已经纠正
for j in range(i + 1 , n): # 内层循环 n - i - 1 次。
if nums[i] + nums[j] == target: # 如果 num[i] + num[j] 的值恰好是 target
print([i,j]) # 那就打印这个下标组合
isFind = True # 改变 isFind 的值为 True,表示已经找到
if isFind == False: # isFind 依然维持原值 False,那么,肯定就是没有找到
print("找不到!") # 显示输出信息
运行实况:D:\[00.Exerciese.2022]\Python>python x.py
请录入目标整数:235
[415, 8385]
[2058, 2388]
[2058, 6834]
[2411, 5101]
[2651, 8385]
[5313, 8150]
[6265, 7762]
D:\[00.Exerciese.2022]\Python>
|