用Python输出完全数

 如果一个数恰好等于它的真因子之和,则称该数为完全数。

例如:6=1+2+3,6就是一个完全数。

count=0
s=eval(input("输入你想输出几个完全数:"))#s表示你想输出的完全数个数
message="输出"+str(s)+"个完全数:"
for m in range(1,10000):#m表示完全数,遍历1到10000的数,表示完全数的范围,可以自己设定
  for n in range(1,10000):#n表示真因子,遍历1到10000的数,表示真因子数的范围,可以自己设定
    if(m==n*(n+1)/2):#完全数的计算公式,从1到10000的范围里找到我们所需要的完全数
        message+=str(m)+"\t"#输出完全数的格式
        count+=1#记录完全数的个数
    else:
        continue
  if(count>=s):
     break
print(message)

你可能感兴趣的:(python)