编程题

设计一个算法, 将一个正整数分解质因数。 程序分析: 对 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:

else:

print(n)

break

if __name__ == "__main__":

while True:

num=input("输入一个正整数:")

if not num.isdigit():

break

fun(int(num))

查看答案
赣ICP备20007335号-2