猫史档案馆


【PYTHON作品分享】分解质因数

用户:KIHIOKIHIO查看:0 回复:0 评论:0 创建时间:2021-07-30T15:29:54


def ss(n):
    i=2
    s=True
    while i<n:
        if n%i==0:
            s=False
            break
        i+=1
    return s 

def main():
    l=0
    print("请输入一个>1的整数(非素数):")
    try:
        n=float(input())
    except ValueError:
        l=1
    if l==0:
        if n-(float(int(n)))>0:
            l=1
    if l==0:
        if n<=1:
            l=1
        else:
            n=int(n)
    if l==0:
        if ss(n):
            l=1
    if l==1:
        print("输入错误。")
    else:
        i=2
        m=0
        s=' '
        while not(ss(n)):
            if ss(i) and n%i==0:
                if s==' ':
                    s=str(i)
                else:
                    s=s+'*'+str(i)
                n=int(n/i)
                m=1
                i=2
            if m==0:
                i+=1
            else:
                m=0
        s=s+'*'+str(n)
        print(s)

while True:
    main()


回复

上一页1 页 / 共 0下一页