蓝桥杯BASIC-16分解质因数——python

用字典存储从4~b的所有结果

a,b=map(int,input().split())
dic={}

for i in range(4,a+1):
    for j in range(2,int(i/2)+1):
        if i%j==0:
            p=int(i/j)
            if dic.get(p):
                dic[i]=str(j)+"*"+dic.get(p)
            else:
                dic[i]=str(j)+"*"+str(p)
            break

for i in range(a,b+1):
    print(i,end="=")
    temp1=0
    temp2=0
    temp3=0
    for j in range(2,int(i/2)+1):
        if i%j==0:
            temp1=1
            temp2=j
            temp3=int(i/j)
            break
    if temp1==0:
        print(i)
        dic[i]=str(i)
    elif temp1==1:
        if dic.get(temp3):
            dic[i]=str(temp2)+"*"+dic.get(temp3)
            print(dic.get(i))
        else:
            dic[i]=str(temp2)+"*"+str(temp3)
            print(dic.get(i))

你可能感兴趣的:(蓝桥杯,python,职场和发展)