python找因数,python定义函数求因数
要想做到大蟒语言求因数方法,首先要明白其中的原理:
1、对由123456789这九个数字组成的9位数进行分解质因数。
2、123457698=2x3x3x7x13x23x29x113,所以他的值因数是113。
3、总共有362880种可能,从中找出值因数中最小的数字和值因数中数。
相关推荐: 《Python入门教程》
好了,下面来看看大蟒语言求因数方法的实现源码:
#编码:utf-8
导入数学
定义生成器(计数,秒):
ifcount==1:
foriins:
伊尔迪
else:
foriins:
_=个集合
_.删除
for_ingenerator(count-1,_):
产量_*10 i
素数=[2,3]
defprime(idx):
ifidxlen(素数):
returnprimes[idx]
新=素数[-1] 2
whileTrue:
foriinprimes:
ifnew%i==0:
破裂
else:
素数.追加(新)
破裂
新=2
returnprime(idx)
defprobe(number,idx,value=0):
ifvaluenumber:
返回值
p=质数(idx)
sqrt=math.sqrt(数字)
whilenumber%p!=0andsqrt=p:
idx=1
p=质数(idx)
ifsqrtp:
returnnumber
returnprobe(number/p,idx,max(p,value))
if__name__==__main__:
_min=10000000000,1000000000
_max=0,0
fornumberingenerator(9,设置(范围(1,10))):
maxfactor=probe(数字,0)
ifmaxfactor_min[0]:
_min=maxfactor,[number]
elifmaxfactor==_min[0]:
_min[1].追加(数字)
ifmaxfactor_max[0]:
_max=maxfactor,[number]
elifmaxfactor==_max[0]:
_max[1].追加(数字)
打印_分钟
打印_最大
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。