python怎么判斷素數(shù)
質(zhì)數(shù)(Prime number),又稱素數(shù),指在大于1的自然數(shù)中,除了1和該數(shù)自身外,無法被其他自然數(shù)整除的數(shù)(也可定義為只有1與該數(shù)本身兩個因數(shù)的數(shù))。
那么想計算出一個隨機數(shù)是不是質(zhì)數(shù)用Python應(yīng)該怎么寫呢?首先第一句話肯定是接受用戶輸入的數(shù)字:
n = int(input('please enter the number:'))
接著要計算該數(shù)是不是質(zhì)數(shù),那么就要從2開始一直除到該數(shù)之前的那個自然數(shù),很明顯是一個數(shù)字范圍:
for i in range(2, n):
在循環(huán)體里面,每次循環(huán)當然就是要判斷當次除法是否是整除,這里可以使用求模運算,也就是取余,當余數(shù)為0時,該數(shù)就不是質(zhì)數(shù):
if n % i == 0: print('%d is not a prime number!' % n) break
這個break意思就是當該數(shù)不是質(zhì)數(shù)時,就跳出整個循環(huán),該數(shù)就不是我們要的數(shù)字了。
那么,所有循環(huán)迭代都完成后還沒有找出能整除的情況的話,那么可以判斷該數(shù)就是一個質(zhì)數(shù),所以:
else:print('%d is a prime number!' % n)
那么此時,所有代碼就寫好了,不過為了看起來簡單,沒有罩一層是否大于1的判斷,用戶輸入的數(shù)字默認需要大于1:
n = int(input('please enter the number:'))for i in range(2, n): if n % i == 0: print(' %d is not a prime number!' % n) breakelse: print(' %d is a prime number!' % n)
內(nèi)容擴展:
素數(shù)判斷的實例:
for i in range(2,100): for j in range(2,i): if i%j==0:break else: print(i,end=’t’)
到此這篇關(guān)于python怎么判斷素數(shù)的文章就介紹到這了,更多相關(guān)python判斷素數(shù)的方法內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 使用Python webdriver圖書館搶座自動預(yù)約的正確方法2. Linux刪除系統(tǒng)自帶版本Python過程詳解3. ASP基礎(chǔ)知識VBScript基本元素講解4. Python 合并拼接字符串的方法5. Python 利用Entrez庫篩選下載PubMed文獻摘要的示例6. Python3 json模塊之編碼解碼方法講解7. Python 制作查詢商品歷史價格的小工具8. ASP.NET MVC使用jQuery ui的progressbar實現(xiàn)進度條9. Python sublime安裝及配置過程詳解10. python 使用事件對象asyncio.Event來同步協(xié)程的操作

網(wǎng)公網(wǎng)安備