導航:首頁 > 編程語言 > python整數的素因分解

python整數的素因分解

發布時間:2022-07-10 20:48:46

python3 做正整數的拆分,輸入4,輸出[[1,1,1,1],[1,1,2],[1,3],[2,2],[4]] 請問有誰會啊,求指點

deff(num):
l=[1]*num
r=[]

foriinrange(len(l)-1):
r.append(l[:])
l[-2]=l[-1]+l[-2]
dell[-1]

r.append(l[:])
returnr

printf(4)

囧……這樣少了那個[2,2]…… 好像要用到除法和求余…… 下午再想想看……

⑵ 求Python的質因數分解

x=eval(input("請輸入小於1000的整數:"))

k=2

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

while x>1:

if x%k==0:

print(k,end="")

x=x/k

if x>1:

print("*",end="")

else:

k=k+1

⑶ 使用python將一個正整數分解質因數。例如:輸入90,列印出90=2*3*3*5。應該要怎麼做

對n進行分解質因數,應先找到一個最小的質數k,然後按下述步驟完成:
(1)如果這個質數恰等於n,則說明分解質因數的過程已經結束,列印出即可。
(2)如果n<>k,但n能被k整除,則應列印出k的值,並用n除以k的商,作為新的正整數你n,重復執行第一步。
(3)如果n不能被k整除,則用k+1作為k的值,重復執行第一步。
程序源代碼:
實例(Python 2.0+)
#!/usr/bin/python
# -*- coding: UTF-8 -*-

def receNum(n):
print '{} = '.format(n),
if not isinstance(n, int) or n <= 0 :
print '請輸入一個正確的數字 !'
exit(0)
elif n in [1] :
print '{}'.format(n)
while n not in [1] : # 循環保證遞歸
for index in xrange(2, n + 1) :
if n % index == 0:
n /= index # n 等於 n/index
if n == 1:
print index
else : # index 一定是素數
print '{} *'.format(index),
break
receNum(90)
receNum(100)
以上實例輸出結果為:
90 = 2 * 3 * 3 * 5100 = 2 * 2 * 5 * 5

⑷ Python去除整數列表中的素數,輸出其中素數個數

為整數,元素之間逗號隔開,編寫程序將列表中的素數去除,輸出

⑸ python3環境下,對一個整數分解質因數,這么寫哪裡有錯誤求解

少個else:

num1=int(input("請輸入要分解的正整數:"))
temp=[]
ifnum1==1:
print("無法分解質因素")
else:
k=2
whilek<=num1:
ifnum1%k==0:
num1=num1/k
temp.append(k)
else:
k+=1
print(temp)

⑹ Python求因數分解

defm(n):
ret=[]
whilen>1:
foriinrange(n-1):
k=i+2
ifn%k==0:
ret.append(k)
n=int(n/k)
break
print(ret)

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

至於如何處理成^就比較簡單了,可以用 Counter 自己處理下。

⑺ python整數拆分成幾個數的和

如何實現整數分為幾個數的和,可以理解為一個整數的分箱問題 簡單敘述解題思路: 比如:4這個整數,最多分為4個箱(1,1,1,1);最少一個箱...

⑻ Python編寫一個程序,輸入9位整數,分解為3個3位整數

a="123456789"
b=[a[i:i+3]foriinrange(0,len(a),3)]
c=','.join(b)
print(c)

最後輸出為str類型的格式
123,456,789
而不是
[123,456,789]

⑼ python將一個正整數分解質因數.

nnotin[1]就是n不等於1

print'{}*'.format(index)是在最後將輸入的n列印成質因數,就是變成1*2*5這種樣式

⑽ 將一個正整數分解質因數。python3.6問題,輸出為空,是哪裡出了問題,求大神解答

第一是函數p(t,l)沒有返回,在函數里修改列表l,是不能把結果帶回的,還有後面的代碼里使用了p(t/h),p函數需要兩個參數,另外的代碼也有一些問題,分解質因數推薦寫成以下的形式

defp(n):
l=[]
foriinrange(2,n):
ifi*i>n:
break
whilen%i==0:
n//=i
l.append(i)
ifn!=1:
l.append(n)
returnl


i=int(input("請輸入一個不小於2的正整數:"))
l=p(i)
print("".join(['*'+str(l[i])ifi!=0elsestr(l[i])foriinrange(len(l))]))
閱讀全文

與python整數的素因分解相關的資料

熱點內容
awss3命令 瀏覽:356
百度店鋪客戶訂單手機加密 瀏覽:500
釘釘班群文件夾怎麼上傳文件 瀏覽:749
人社app怎麼解綁手機 瀏覽:101
caj文件夾打不開 瀏覽:475
什麼app可以將電量變色 瀏覽:692
解放出你的解壓抖音小游戲 瀏覽:345
什麼方式解壓比較好 瀏覽:266
erp是什麼伺服器 瀏覽:185
python中tmp 瀏覽:23
說明wpf加密過程 瀏覽:144
java讀取list 瀏覽:703
iis7gzip壓縮 瀏覽:39
有什麼安卓機打吃雞好 瀏覽:598
三星u盤加密狗 瀏覽:474
php函數的返回值嗎 瀏覽:587
國企穩定程序員 瀏覽:328
編程貓如何使用教程視頻 瀏覽:220
安卓遠端網頁如何打日誌 瀏覽:218
壓縮flash大小 瀏覽:993