Python 程序:检查给定数字是否为完全数


2022 年 5 月 9 日, Learn eTutorial
1711

在这个简单的 Python 程序中,我们需要检查一个数字是否是完全数。这是一个基于数字的 Python 程序。

为了更好地理解这个示例,我们始终建议您学习以下列出的 Python 编程基础知识

什么是完全数?

这个简单的 Python 程序是关于完全数的。如果一个正整数的所有真因子(即除了自身以外的约数)的和等于它本身,那么这个数就是完全数。在这个基本的 Python 程序中,我们需要检查用户的输入是否是完全数,并打印结果。

例如,我们取数字 6。我们知道 6 的约数是 1、2、3,让我们检查这些约数的和。1 + 2 + 3 = 6,所以它匹配,6 是一个完全数。

如何在 Python 中检查完全数?

为了在 Python 程序示例中实现这个逻辑,我们必须接受用户输入的数字,并使用从 1 到该数字的 Python for 循环。使用 Python 语言中的 **mod** 运算符检查给定数字的所有约数。如果 Python if 条件满足,则将该约数添加到变量 **sum** 中,该变量包含之前约数的和。在所有 `for 循环`迭代之后,检查 sum 和数字是否相等。如果相等,则它是完全数,`否则`,不是完全数。

算法

步骤 1:使用 Python 编程语言中的 input 方法接受用户输入的数字,并使用 `int()` 将字符串转换为整数。

步骤 2: 将 sum 变量初始化为 **零**。

步骤 3: 打开一个从 1 到该数字的 `for 循环`,以查找所有约数。

步骤 4: 使用 if 条件检查数字 **mod i** 是否为零。如果为零,则它是一个约数。

步骤 5: 如果是约数,则使用 Python 基本语法将该数字添加到 sum 中。

步骤 6: 使用 `if` 条件检查数字是否等于 sum,如果是,则使用 Python 语言中的 print 语句打印该数字是完全数。

Python 源代码

                                          n = int(input("Enter any number: "))
sum1 = 0
for i in range(1, n):
    if(n % i == 0):
        sum1 = sum1 + i
if (sum1 == n):
    print("The number is a Perfect number")
else:
    print("The number is not a Perfect number")
                                      

输出

Enter any number : 6

The number is a Perfect number