用于打印一个数字所有质因数的 Python 程序


2022 年 4 月 27 日, Learn eTutorial
1932

在这个简单的 Python 程序中,我们需要检查一个数字的质因数。这是一个中等难度的 Python 程序。

要理解这个例子,您应该了解以下 Python 编程主题

什么是质因数?

在这个简单的 Python 程序中,我们需要打印一个数字的质因数。所以首先找出给定数字的因数,然后检查其中是否有质数

例如,我们取一个整数 25

  • 计算 25 的因数,它们是 1, 5
  • 我们检查其中是否有质数,而 5 是一个质数
  • 所以 5 是 5 的质因数

质数是一个只有两个因数的数字,即 1 和它本身;请参考质数 Python 程序以获取更多详细信息。

注意: 数字 1 不是质数

如何在 Python 中检查一个数字的质因数?

为了在 Python 编程语言中应用此逻辑,我们会在接受用户输入的数字后,从 1 到该数字打开一个 while 循环。然后使用 Python 中的 if 条件内的模 (%) 运算符找到该数字的所有除数。找到一个除数后,检查这个除数是否为质数?为此,使用另一个 while 循环并找到该除数的每个因数。如果该除数只有两个因数,那么它是一个质数,所以 print 该除数,并再次迭代外部循环以找到下一个除数。

算法

步骤 1: 使用 Python 编程中的 input 函数从用户那里获取输入。

步骤 2: 初始化变量 'i =1',并从 1 到输入数字打开一个 while 循环。

步骤 3: 初始化变量 k = 0

步骤 4: 使用 if 条件检查数字 mod i 是否为零以获取除数,并初始化 j =1

步骤 5:1 到除数打开 while 循环,以检查除数是否为质数。

步骤 6: 现在使用 if 条件运算符检查除数是否有任何因数。

步骤 7: 如果找到任何因数,则将另一个变量 k 增加 1

步骤 8:j 增加 1 并检查 k 的值;如果 k == 2,则打印该除数是质数。

步骤 9: 在 Python 编程中将 i 增加 1

Python 源代码

                                          n=int(input("Enter an integer:"))
print("Prime Factors are:")
i=1
while(i<=n):
    k=0
    if(n%i==0):
        j=1
        while(j<=i):
            if(i%j==0):
                k=k+1
            j=j+1
        if(k==2):
            print(i)
    i=i+1
                                      

输出

Enter an integer:24
Prime Factors are:
2
3