Python實現將一個正整數分解質因數的方法分析 - 程式前沿
文章推薦指數: 80 %
遇到一個python程式設計聯絡題目:將一個正整數分解質因數。
例如:輸入90,列印出90=2*3*3*5。
版本一: ... 線上計算器_標準計算器:
程式語言前端開發IOS開發Android開發雲端運算人工智慧伺服器搜尋資料庫軟體開發工具Python實現將一個正整數分解質因數的方法分析2018.07.05程式語言python,正整數,質因數HOME程式語言Python實現將一個正整數分解質因數的方法分析Advertisement本文例項講述了Python實現將一個正整數分解質因數的方法。
分享給大家供大家參考,具體如下:遇到一個python程式設計聯絡題目:將一個正整數分解質因數。
例如:輸入90,列印出90=2*3*3*5。
版本一:開始,沒動腦子就開始寫了,結果如下程式碼
#!/usr/bin/python
#014.py
importmath
number=int(raw_input("Enteranumber:"))
whilenumber!=1:
foriinrange(1,number1):
if(number%i)==0andi!=1:
number=number/i
ifnumber==1:
print"%d"%i
else:
print"%d*"%i,
break
結果,輸入9876543210這個十位數的時候,報錯:Traceback(mostrecentcalllast): File“./014.py”,line8,in
由於,在判斷一個數n是否是質數的時候,只需從2到n的平方根就行了,所以有了版本二,程式碼如下:
#!/usr/bin/python
#014_1.py
importmath
number=int(raw_input("Enteranumber:"))
list=[]
defgetChildren(num):
print'*'*30
isZhishu=True
foriinrange(2,int(math.sqrt(1num))1):#多加個1
ifnum%i==0andi!=num:
list.append(i)
isZhishu=False
getChildren(num/i)
break
ifisZhishu:
list.append(num)
getChildren(number)
printlist
這樣,數字可以增大很多而不至於報錯。
但是,也是很有限度的,當輸入大數如123124324324134334時,會導致記憶體不足,殺死程序Traceback(mostrecentcalllast): File“./014_1.py”,line20,in
目錄1.您可能感興趣的文章:您可能感興趣的文章:Python實現簡單求解給定整數的質因數演算法示例Python程式設計求質數例項程式碼Python判斷是否為質數或素數的例項使用Python判斷質數(素數)的簡單方法講解python實現挑選出來100以內的質數Python程式設計實現數學運算求一元二次方程的實根演算法示例python實現數獨演算法例項Python實現破解猜數遊戲演算法示例Python實現的質因式分解演算法示例Advertisement写评论取消回覆很抱歉,必須登入網站才能發佈留言。
近期文章Spark入門(一)用SparkShell初嘗Spark滋味2019.12.08Spark入門(二)如何用Idea運行我們的Spark項目2019.12.08Spark入門(三)Spark經典的單詞統計2019.12.08Spark入門(四)Spark的map、flatMap、mapToPair2019.12.08Spark入門(五)Spark的reduce和reduceByKey2019.12.08Spark入門(六)Spark的combineByKey、sortBykey2019.12.08Spark入門(七)Spark的intersection、subtract、union和distinct2019.12.08Spark實戰尋找5億次訪問中,訪問次數最多的人2019.12.08Spark實戰搭建我們的Spark分佈式架構2019.12.08【機器學習】深度學習開發環境搭建2019.12.08AdvertisementAdvertisement
延伸文章資訊
- 1質因數分解- Python 教學 - STEAM 教育學習網
這篇文章會介紹使用Python 變數的計算、while 迴圈、for 迴圈、input 指令和if 判斷式,做出一個使用者輸入數字後,判斷數字是否為質數,如果不是質數,就將其做質因數 ...
- 2Python實現正整數分解質因數操作示例- IT閱讀 - ITREAD01 ...
本文例項講述了Python實現正整數分解質因數操作。 ... 遇到一個Python程式設計練習題目:將一個正整數分解質因數。 ... 線上計算器_標準計算器:
- 3Python 练习实例14 | 菜鸟教程
Python 练习实例14 Python 100例题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行分解质因数,应先找到一个最小的质数k, ...
- 4python:整数的质因数分解(因式分解的完美方法) - 知乎专栏
这本是一个很常见很基础的问题。 但我今天的方法应该是“很接近完美”的方法了。特别是其中判别质数的方法应该是最简单的了。def nxyz(fi): # 整数的因式分解公式, ...
- 5python整数的质因数分解 - BBSMAX
算术基本定理首先,我们得知道,任意一个大于1的自然数都可以分解为有限个质数的乘积.这里因子均为质数,且为正整数.我们把这样的分解成为N的标准分解式.