分解质因数
每个合数都可以写成几个质数相乘的形式,其中每个质数都是这个合数的因数,把一个合数用质因数相乘的形式表示出来,叫做分解质因数。如30=2×3×5 。分解质因数只针对合数。
把一个合数分解成若干个质因数的乘积的形式,即求质因数的过程叫做分解质因数。
分解质因数只针对合数。(分解质因数也称分解素因数)求一个数分解质因数,要从最小的质数除起,一直除到结果为质数为止。分解质因数的算式叫短除法,和除法的性质相似,还可以用来求多个数的公因式。
# -*- coding: utf-8 -*-
"""
Created on Fri May 22 10:13:53 2020
自定义函数:python分解因数
@author: Administrator
"""
import sys
def getPrimeFactor(n):
tn=n
temp_list=[]
if not isinstance(n, int) or n <= 2 :
print('请输入一个正确的数字或大于2的数字!')
sys.exit(0)
#temp_list.append(n)
while n not in [1]:
for i in range(2,n+1):
#print(i)
if n % i == 0:
temp_list.append(i)
n=n//i
break
if len(temp_list)==0:
print('这是一个质数')
else:
#temp_list.append(tn)
temp_list.sort()
print('%d=%d'%(tn,temp_list[0]),end='')
for i in range(1,len(temp_list)):
print('*%d'%temp_list[i],end='')
#print("done")
getPrimeFactor(120)
#120=2*2*2*3*5