用python判斷一個數是否是素數的方法-創(chuàng)新互聯(lián)

創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務器提供商,新人活動買多久送多久,劃算不套路!

創(chuàng)新互聯(lián)是網站建設技術企業(yè),為成都企業(yè)提供專業(yè)的網站建設、成都網站制作,網站設計,網站制作,網站改版等技術服務。擁有10年豐富建站經驗和眾多成功案例,為您定制適合企業(yè)的網站。10年品質,值得信賴!

這篇文章主要介紹用python判斷一個數是否是素數的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

先來看下什么是質數:

質數(Prime number),又稱素數,指在大于1的自然數中,除了1和該數自身外,無法被其他自然數整除的數(也可定義為只有1與該數本身兩個因數的數)。

簡單來說就是,只能除以1和自身的數(需要大于1)就是質數。舉個栗子,5這個數,從2開始一直到4,都不能被它整除,只有1和它本身(5)才能被5整除,所以5就是一個典型的質數。

那么想計算出一個隨機數是不是質數用Python應該怎么寫呢?首先第一句話肯定是接受用戶輸入的數字:

n = int(input("please enter the number:"))

接著要計算該數是不是質數,那么就要從2開始一直除到該數之前的那個自然數,很明顯是一個數字范圍:

for i in range(2, n):

在循環(huán)體里面,每次循環(huán)當然就是要判斷當次除法是否是整除,這里可以使用求模運算,也就是取余,當余數為0時,該數就不是質數:

if n % i == 0:
        print("%d is not a prime number!" % n)
        break

這個break意思就是當該數不是質數時,就跳出整個循環(huán),該數就不是我們要的數字了。

那么,所有循環(huán)迭代都完成后還沒有找出能整除的情況的話,那么可以判斷該數就是一個質數,所以:

else:
    print("%d is a prime number!" % n)

那么此時,所有代碼就寫好了,不過為了看起來簡單,沒有罩一層是否大于1的判斷,用戶輸入的數字默認需要大于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)
        break
else:
    print(" %d is a prime number!" % n)

這里要細細品味這段代碼,else其實不是和if是一對,而是和for并排的,我們常見的是if…else…或者if…elif…else諸如此類,但其實for也可以和else搭配出現(xiàn),在這段代碼里,當某一次遍歷結果余數為0后,break生效,那循環(huán)就結束了,那與之成對出現(xiàn)的else代碼也就不執(zhí)行了;當所有遍歷結束后沒有一次余數為0,那該循環(huán)就轉到else開始執(zhí)行,打印輸出“該數為質數”。

以上是用python判斷一個數是否是素數的方法的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注創(chuàng)新互聯(lián)-成都網站建設公司行業(yè)資訊頻道!

網站欄目:用python判斷一個數是否是素數的方法-創(chuàng)新互聯(lián)
文章分享:http://bm7419.com/article10/ijddo.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供網站導航、虛擬主機網站設計、網站內鏈、網站維護小程序開發(fā)

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都網頁設計公司