python练习题(十一):将一个正整数分解质因数

题目:
将一个正整数分解质因数。
例如:输入90,打印出90=233*5。

代码:

# 题目:将一个正整数分解质因数。
# 例如:输入90,打印出90=2*3*3*5。


def dec(n):
    flag = True
    a_list = []
    f = n
    while flag:
        if n == 1:
            a_list.append(1)
            break
        for i in range(2, n+1):
            if n % i == 0:
                n = int(n / i)
                if n == 1:   # 此时n=i为素数
                    flag = False
                    a_list.append(i)
                else:
                    a_list.append(i)
                break
    print("%d = %d" % (f, a_list[0]), end="")
    for j in range(1, len(a_list)):
        print("*%d" % a_list[j], end="")
    print()


while True:
    m = int(input("请输入一个正整数:"))
    if m <= 0:
        print("您输入的为:%d" % m)
    else:
        dec(m)
        break

运行结果:
在这里插入图片描述

发布了37 篇原创文章 · 获赞 0 · 访问量 422

猜你喜欢

转载自blog.csdn.net/yizhishuixiong/article/details/104902817