原题:
一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。
我的代码:
#!/usr/bin/python # encoding=utf-8 # -*- coding: UTF-8 -*- # 一个数如果恰好等于它的因子之和,这个数就称为"完数"。例如6=1+2+3.编程找出1000以内的所有完数。 x = int(input("please input the number:\n")) #用于标记,寻找多少范围内的完数; for i in range(2,x+1): #数字1-x s = 0 #因子求和 k = int(i*0.5)+1 for j in range(1,k): if (i%j==0) and (j != i) : s = s + j #print("==>",i,j,s) if i == s : print("################",i)
结果:
原题解法:
使用了from sys import stdout
————————(我是分割线)————————
参考:
1. RUNOOB.COM:https://www.runoob.com/python/python-exercise-example19.html
备注:
初次编辑时间:2019年10月3日11:42:59
环境:Windows 7 / Python 3.7.2
原文地址:https://www.cnblogs.com/kaixin2018/p/11619451.html
时间: 2024-10-21 03:03:26