%%time
# 完数if __name__=="__main__":
n =int(input("请输入所选范围上限: "))print(f'输入的范围上限:{n}')
i =2# 变量 i 控制选定数的范围while i <= n:
s =0# s记录累加因子之和,保证每次循环时s的初值为0
j =1# j 控制除数范围for j inrange(i):if j !=0and i % j ==0:# 判断 j 是不是 i 的因子
s += j # 因子和if s == i:# 判断因子之和是否和原数相等print("2到%d之间的完数:%d"%(n, i))
i +=1
输入的范围上限:10000
2到10000之间的完数:6
2到10000之间的完数:28
2到10000之间的完数:496
2到10000之间的完数:8128
CPU times: user 8.92 s, sys: 10.4 ms, total: 8.93 s
Wall time: 11.8 s
%%time
# 完数if __name__=="__main__":
n =int(input("请输入所选范围上限: "))
i =2# 变量 i 控制选定数范围print(n)while i <= n:
s =0# s记录累加因子之和,保证每次循环时s的初值为0
j =1# j 控制除数范围while j <=(i//2):if j !=0and i % j ==0:# 判断 j 是不是 i 的因子
s += j # 因子和
j +=1if s == i:# 判断因子之和是否和原数相等print("2到%d之间的完数:%d"%(n, i))
i +=1
10000
2到10000之间的完数:6
2到10000之间的完数:28
2到10000之间的完数:496
2到10000之间的完数:8128
CPU times: user 8.47 s, sys: 5.87 ms, total: 8.47 s
Wall time: 11.1 s