|
发表于 2022-11-3 22:36:04
|
显示全部楼层
本帖最后由 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>
复制代码 |
|