要求输入一个整数n,输出n的所有因式分解式子。如输入n=12,则输出12=2x2x3
12=2x6 12= 3x4 12=12 具体要求见图片,我自己写的代码总是超时,哪位好心的大神帮忙看看 这题怎末破
flag = 0
s = input()
num = int(s)
num1 = num
num2 = str(num)
s1 = []
s = num2+'='
i = 2
if num == 1:
print('1=1')
flag = 1
if num == 0:
print('0=0')
flag =1
while flag == 0:
if num%i == 0:
if num/i<i:
i = num
s1.append(int(i))
num = num/i
if num==1:
s = str(num2)+'='
for j in range(0,len(s1)):
if j< len(s1)-1:
s = s+str(s1[j])+'*'
else:
s = s+str(s1[j])
print(s)
if len(s1)>1:
a = i * s1[len(s1)-2]
b = s1[len(s1)-2]
if a / (b+1) < (b+1):
s1.pop()
s1.pop()
num = a
i = a
else:
s1.pop()
s1.pop()
b = b+1
while not a%b==0:
b = b+1
num = a
i = b
else:
flag=1
else:
i = i + 1