#14.题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。
###写一个函数,用来判断是否是素数
def isPrimeNumber(b):
count = 0
for i in range(2,b):
if b%i==0:
count=count+1
if count==0:
return True #print(b,"是素数") 是素数返回 True
else:
return False #print(b,"不是素数") 不是素数返回 False
def fix(x):
list=[] #先设置一个空格列表 ,用来放 质因数
y=x #设置一个中间变量,y,每次需要对y 进行循环求解质因数,一旦
flag=1
while flag==1:
for i in range(2,y):
if y%i==0:
if isPrimeNumber(i) is True and isPrimeNumber(y//i) is False:
list.append(i)
y=y//i #更新y的值,重新发起求解质因数
break #结束本次 for循环,判断是否从whilec重新开始,重新进入for循环,从i=2重新开始
if isPrimeNumber(i) is True and isPrimeNumber(y//i) is True:
list.append(i)
python 3.6 将一个正整数分解质因数
本文详细讲解如何使用Python 3.6将一个正整数有效地分解成质因数,通过实例展示具体步骤和代码实现,帮助读者理解质因数分解在数学和编程中的应用。
摘要由CSDN通过智能技术生成