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

def SlowSnail(n):
    while n != 1:  # 循环保证递归
        for index in range(2, n + 1):
            if n % index == 0:
                n //= index  # n 等于 n//index
                if n == 1:
                    print(index)
                else:
                    print('%s *' % index, end=" ")
                    # 普通的print('%s*' % index)会让每一次输出都在下一行
                    # 把end设置成空格可以让输出都在同一行,因为end默认为换行
                break


while 1:
    n = int(input('请输入一个正整数:'))
    if n == -1:  # 设置退出循环条件
        break
    while n <= 0:  # 设置输入错误条件
        n = int(input('输入错误,请重新输入:'))
    SlowSnail(n)  # 调用函数

posted @   放氮气的蜗牛  阅读(292)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示