真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

python因數(shù)分解函數(shù) python因數(shù)分解算法

使用python將一個(gè)正整數(shù)分解質(zhì)因數(shù)。例如:輸入90,打印出90=2*3*3*5。應(yīng)該要怎么做?

對(duì)n進(jìn)行分解質(zhì)因數(shù),應(yīng)先找到一個(gè)最小的質(zhì)數(shù)k,然后按下述步驟完成:

成都創(chuàng)新互聯(lián)公司-成都網(wǎng)站建設(shè)公司,專注網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、網(wǎng)站營(yíng)銷推廣,空間域名,虛擬主機(jī),網(wǎng)站改版維護(hù)有關(guān)企業(yè)網(wǎng)站制作方案、改版、費(fèi)用等問題,請(qǐng)聯(lián)系成都創(chuàng)新互聯(lián)公司。

(1)如果這個(gè)質(zhì)數(shù)恰等于n,則說明分解質(zhì)因數(shù)的過程已經(jīng)結(jié)束,打印出即可。

(2)如果nk,但n能被k整除,則應(yīng)打印出k的值,并用n除以k的商,作為新的正整數(shù)你n,重復(fù)執(zhí)行第一步。

(3)如果n不能被k整除,則用k+1作為k的值,重復(fù)執(zhí)行第一步。

程序源代碼:

實(shí)例(Python 2.0+)

#!/usr/bin/python

# -*- coding: UTF-8 -*-

def reduceNum(n):

print '{} = '.format(n),

if not isinstance(n, int) or n = 0 :

print '請(qǐng)輸入一個(gè)正確的數(shù)字 !'

exit(0)

elif n in [1] :

print '{}'.format(n)

while n not in [1] : # 循環(huán)保證遞歸

for index in xrange(2, n + 1) :

if n % index == 0:

n /= index # n 等于 n/index

if n == 1:

print index

else : # index 一定是素?cái)?shù)

print '{} *'.format(index),

break

reduceNum(90)

reduceNum(100)

以上實(shí)例輸出結(jié)果為:

90 = 2 * 3 * 3 * 5100 = 2 * 2 * 5 * 5

Python求因數(shù)分解

def?m(n):

ret?=?[]

while?n??1:

for?i?in?range(n-1):

k?=?i+2

if?n?%?k?==?0:

ret.append(k)

n?=?int(n?/?k)

break

print(ret)

m(20)就可以輸出20的因式分解了。

至于如何處理成^就比較簡(jiǎn)單了,可以用 Counter 自己處理下。

求Python的質(zhì)因數(shù)分解

x=eval(input("請(qǐng)輸入小于1000的整數(shù):"))

k=2

print(x,"=",end="")

while x1:

if x%k==0:

? print(k,end="")

? x=x/k

? if x1:

? ? ? print("*",end="")

else:

? k=k+1


網(wǎng)站標(biāo)題:python因數(shù)分解函數(shù) python因數(shù)分解算法
地址分享:http://weahome.cn/article/dojpgie.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部