自定义函数twonums sum((n,1st),在列表1st中查找是否有 两数之和等于n,若有则返回两数的下标,否则返回-1。对于一 个不包含重复数字的有序列表[L,4, 5,6, 7,8, 9, 10D,11, 12,13,15,18,19,20,21, 29, 34, 54, 65],从键盘输入 n,调用函数twonums sumO输出满足条件的两个数的下标(找 若所有数均不满足 到一组即可且要求其中的一个数尽量小), 条件则输出“not found”
时间: 2023-08-18 11:08:40 浏览: 113
好的,以下是实现该自定义函数的代码:
```python
def twonum_sum(n, lst):
# 使用双重循环查找两数之和等于n的数对
for i in range(len(lst)):
for j in range(i+1, len(lst)):
if lst[i] + lst[j] == n:
return i, j
# 如果没有找到,返回-1
return -1
# 定义有序列表
lst = [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 15, 18, 19, 20, 21, 29, 34, 54, 65]
# 从键盘输入n
n = int(input("Enter a number: "))
# 调用twonum_sum函数查找满足条件的两个数的下标
result = twonum_sum(n, lst)
# 如果找到了,输出下标;否则输出“not found”
if result == -1:
print("not found")
else:
print(result)
```
该程序会从键盘输入一个数n,然后调用自定义函数twonum_sum查找满足条件的两个数的下标。如果找到了,程序会输出下标;否则输出“not found”。
需要注意的是,如果列表中有多组满足条件的数对,该程序只会输出其中的一组,并且要求其中的一个数尽量小。如果需要输出所有满足条件的数对,可以对函数进行修改。