本文實例講述了Python實現簡單求解給定整數的質因數算法。分享給大家供大家參考,具體如下:
接著做題遇到求解質因數分解的問題,思想很簡單,就是需要遍歷從1到該整數本身,并且判斷當數字為質數時加入列表最后輸出即可,求解這樣的一個正整數的質因數分解,關鍵在于理解,每次得到一個質因數之后需要更新整數為:原始整數除以這個質因數的值,循環直至原始整數的值小于2終止,輸出結果即可,實現如下:
#!usr/bin/env python#encoding:utf-8'''''__Author__:沂水寒城功能:求解整數的質因數分解'''num=int(raw_input())def get_num_factors(num): list0=[] tmp=2 if num==tmp: print num else: while (num>=tmp): k=num%tmp if( k == 0): list0.append(str(tmp)) num=num/tmp #更新 else: tmp=tmp+1 #同時更新除數值,不必每次都從頭開始 print ' '.join(list0)+' '
結果如下:
90
2 3 3 5
180
2 2 3 3 5
PS:這里提供一款功能相似的在線工具供大家參考:
在線分解質因數計算器工具: http://tools.jb51.net/jisuanqi/factor_calc
更多關于Python相關內容感興趣的讀者可查看本站專題:《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設計有所幫助。
新聞熱點
疑難解答