Python如何判断和寻找完美数

Posted mb61d023ef6bb51

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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行)

后面待更新

以上是关于Python如何判断和寻找完美数的主要内容,如果未能解决你的问题,请参考以下文章

算法分析---寻找丑数

寻找完美平方数

《算法零基础》第9讲:算术基本定理

数据结构与算法之深入解析“完美数”的求解思路与算法示例

初学python算法100例-案例18 完数有那么难么

算法15---数论2---亲密数