【Python】如何判断和寻找完美数
卷首语:什么叫完美数?
完美数,也叫完全数,是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和(即因子函数),恰好等于它本身。
如果一个数恰好等于它的真因子之和,则称该数为“完全数”。第一个完全数是6,第二个完全数是28,第三个完全数是496,后面的完全数还有8128、33550336等等。截至2018年,相关研究者已经找到51个完全数。
(以上资料来源:百度百科)
Contents
1 编程思路
首先,要知道,完全数的真因数之和等于自身。
然后,就有了算法。
Python:
def check(num):
n, result = 0, False
# 2. 初始化算法变量 (check函数的局部变量)
if (str(num)[-1] != '6' and str(num)[-1] != '8'):
return False
# 4~5. 先决条件
for i in range(1, num):
# print('第', i, '步: ', end = '')
if (num % i == 0):
# print(n, '+', i, '=', (n + i))
n += i
if (n > num):
break
else:
# print(——);
pass
if (n == num):
result = True
return result
# 取消第8, 10, 15行代码的注释可显示过程
# 算法(共18行)
后面待更新
本文来自博客园,作者:Admin--002,转载请注明原文链接:https://www.cnblogs.com/Py-Study0/articles/15731451.html