Python實現(xiàn)高效求解素數(shù)代碼實例
更新時間:2015年06月30日 10:41:40 投稿:junjie
這篇文章主要介紹了Python實現(xiàn)高效求解素數(shù)代碼實例,本文直接給出代碼實例,需要的朋友可以參考下
素數(shù)是編程中經(jīng)常需要用到的。
作為學習Python的示例,下面是一個高效求解一個范圍內(nèi)的素數(shù)的程序,不需要使用除法或者求模運算。
#coding:utf-8 #設置python文件的編碼為utf-8,這樣就可以寫入中文注釋 def primeRange(n): myArray=[1 for x in range(n+1)] ##列表解析,生成長度為(n+1)的列表,每個數(shù)值都為1 myArray[0]=0 myArray[1]=0 startPos=2 while startPos <= n: if myArray[startPos]==1: key=2 resultPos = startPos * key #可知startPos的整數(shù)倍都不是素數(shù),設置startPos的整數(shù)倍的位置為0表示非素數(shù) while resultPos <= n: myArray[resultPos] =0 key += 1 resultPos = startPos *key startPos += 1 resultList=[] ##將最終的素數(shù)保存在resultList列表返回 startPos=0 while startPos <= n: if myArray[startPos] == 1: resultList.append(startPos) startPos += 1 return resultList numString=raw_input("Input the Range(>3):") numInt=int(numString) if numInt <= 3: print "The Number Need to be greater than 3" else: primeResult=primeRange(numInt) print "The Result is:",primeResult
您可能感興趣的文章:
- Python實現(xiàn)輸出某區(qū)間范圍內(nèi)全部素數(shù)的方法
- Python求出0~100以內(nèi)的所有素數(shù)
- Python 判斷是否為質(zhì)數(shù)或素數(shù)的實例
- Python編程判斷一個正整數(shù)是否為素數(shù)的方法
- 使用Python判斷質(zhì)數(shù)(素數(shù))的簡單方法講解
- Python素數(shù)檢測實例分析
- Python實現(xiàn)求最大公約數(shù)及判斷素數(shù)的方法
- Python素數(shù)檢測的方法
- python求素數(shù)示例分享
- python判斷數(shù)字是否是超級素數(shù)冪
相關文章
詳解Python圖像形態(tài)學處理(開運算,閉運算,梯度運算)
數(shù)學形態(tài)學(Mathematical Morphology)是一種應用于圖像處理和模式識別領域的新方法。本文將為大家介紹Python圖像形態(tài)學處理中的開運算、閉運算和梯度運算,感興趣的可以了解一下2022-06-06pytorch實現(xiàn)對輸入超過三通道的數(shù)據(jù)進行訓練
今天小編就為大家分享一篇pytorch實現(xiàn)對輸入超過三通道的數(shù)據(jù)進行訓練,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01Windows下將Python文件打包成.EXE可執(zhí)行文件的方法
這篇文章主要介紹了Windows下將Python文件打包成.EXE可執(zhí)行文件的方法,需要的朋友可以參考下2018-08-08Python Flask框架開發(fā)之運用SocketIO實現(xiàn)WebSSH方法詳解
Socket.IO本是一個面向?qū)崟rweb應用的JavaScript庫,現(xiàn)在已成為擁有眾多語言支持的Web即時通訊應用的框架。這篇文章主要介紹了Python 運用SocketIO實現(xiàn)WebSSH方法2022-10-10python flask sqlalchemy連接數(shù)據(jù)庫流程介紹
這篇文章主要介紹了python flask sqlalchemy連接數(shù)據(jù)庫流程,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-09-09