第16993题
补全分解正整数质因数的Python代码

设计一个算法,将一个正整数分解质因数。

程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:

  1. 如果这个质数恰等于n,则说明分解质因数的过程已经结束,输出即可。
  2. 如果n>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n,重复执行第一步。
  3. 如果n不能被k整除,则用k+1作为k的值,重复执行第一步。

根据上述算法思想,补全下列代码。

输入输出示例

  • 当n=105时,输出:105= 3*5*7
  • 当n=60时,输出:60= 2*2*3*5
def fun(n):
    print('%d='%n, end=' ')
    for i in    ①   :
        while n!=i:
            if n>i and   ②   :
                print(i,end='*')
                ③
            else:
                break
        else:
              ④
              break
if __name__ == "__main__":
    while True:
        num=input("输入一个正整数:")
        if not num.isdigit():
            break
        fun(int(num))