python判斷所輸入的任意一個(gè)正整數(shù)是否為素?cái)?shù)的兩種方法
素?cái)?shù)(也稱(chēng)質(zhì)數(shù)),是指除了1和該數(shù)本身,不能被任何正整數(shù)整除的正整數(shù)。判斷一個(gè)正整數(shù)m是否為素?cái)?shù),只要判斷m可否被2~根號(hào)m之中的任何一個(gè)正整數(shù)整除,如果m不能被此范圍中任何一個(gè)正整數(shù)整除,m即為素?cái)?shù),否則m為合數(shù)。
方法一:(利用for循環(huán)和break語(yǔ)句)
import math m = int(input("請(qǐng)輸入一個(gè)整數(shù)(>1):")) k = int(math.sqrt(m)) for i in range(2, k+2): if m % i == 0: break #可以整除,肯定不是素?cái)?shù),結(jié)束循環(huán) if i == k+1: print(m, "是素?cái)?shù)!") else: print(m, "是合數(shù)!")
方法二:(利用while循環(huán)和bool變量)
import math m = int(input("請(qǐng)輸入一個(gè)整數(shù)(>1):")) k = int(math.sqrt(m)) flag = True #假設(shè)輸入的整數(shù)為素?cái)?shù) i = 2 while (i <= k and flag == True): if (m % i == 0): flag = False #可以整除,肯定不是素?cái)?shù),結(jié)束循環(huán) else: i += 1 if (flag == True): print(m, "是素?cái)?shù)!") else: print(m, "是合數(shù)!")
例:打印100~200間的全部素?cái)?shù),每行輸出10個(gè)
import math;n=0 for m in range(101,201,2): k = int(math.sqrt(m)) for i in range(2,k+2): if m % i == 0:break if i == k+1: if n % 10 == 0:print() print('%d' % m,end=' ') n += 1
以上這篇python判斷所輸入的任意一個(gè)正整數(shù)是否為素?cái)?shù)的兩種方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用Python的datetime庫(kù)處理時(shí)間(RPA流程)
datetime 是 Python 處理日期和時(shí)間的標(biāo)準(zhǔn)庫(kù)。這篇文章主要介紹了使用Python的datetime庫(kù)處理時(shí)間(RPA流程),需要的朋友可以參考下2019-11-11python numpy查詢(xún)定位賦值數(shù)值所在行列
這篇文章主要介紹了python numpy查詢(xún)定位賦值數(shù)值所在行列,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-09-09Python安裝selenium包詳細(xì)過(guò)程
在本篇文章里小編給大家整理了關(guān)于Python安裝selenium包詳細(xì)過(guò)程,需要的朋友們可以學(xué)習(xí)下。2019-07-07基于Python編寫(xiě)一個(gè)簡(jiǎn)單的垃圾郵件分類(lèi)器
隨著電子郵件的廣泛使用,垃圾郵件也日益增多,本篇文章將介紹如何使用Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的垃圾郵件分類(lèi)器,幫助您更好地管理自己的電子郵件,需要的可以參考一下2023-04-04Python socket套接字實(shí)現(xiàn)C/S模式遠(yuǎn)程命令執(zhí)行功能案例
這篇文章主要介紹了Python socket套接字實(shí)現(xiàn)C/S模式遠(yuǎn)程命令執(zhí)行功能,涉及Python socket套接字編寫(xiě)服務(wù)器/客戶機(jī)模式數(shù)據(jù)傳輸相關(guān)操作技巧,需要的朋友可以參考下2018-07-07Python Web服務(wù)器Tornado使用小結(jié)
最近在做一個(gè)網(wǎng)站的后端開(kāi)發(fā)。因?yàn)槌跗谥挥形乙粋€(gè)人做,所以技術(shù)選擇上很自由。在 web 服務(wù)器上我選擇了 Tornado。雖然曾經(jīng)也讀過(guò)它的源碼,并做過(guò)一些小的 demo,但畢竟這是第一次在工作中使用,難免又發(fā)現(xiàn)了一些值得分享的東西2014-05-05python 最簡(jiǎn)單的實(shí)現(xiàn)適配器設(shè)計(jì)模式的示例
這篇文章主要介紹了python 最簡(jiǎn)單的實(shí)現(xiàn)適配器設(shè)計(jì)模式的示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06