用python統計101~200中素數的個數,並且輸出所有的素數。
分析:這是一道典型的迴圈題。首先,我們應該考慮101~200中得每乙個都需要判斷是否為素數;其次,每乙個數在判斷為素數時都需要判斷能不能被1和它本身以外的數整除。所以這道題,我們在編寫程式的時候要用巢狀迴圈。
for迴圈編寫程式:
方法一:
for i in
range
(101
,200):
for j in
range(2
, i//2)
:if i % j ==0:
break
elif j == i //2-
1:print
(i)else
:continue
注意事項:
在編寫python程式的時候需要注意range(a,b) ,這是乙個前閉後開區間,取a不取b
當我們在判斷每乙個數x是否是素數的時候,我們只需要計算這個數能不能被[2,x/2]之間的數整除即可
當我們判斷乙個數x不能被整除後,就用關鍵字break結束此次迴圈(注意區分break和continue)
方法二:
for i in
range
(101
,200):
for j in
range(2
, i//2+
1):if i % j ==0:
break
else
:print
(i)
注意事項:
此方法中與else對應的if條件為空,也就是第二個for迴圈的內容相當於if的條件和內容
方法三:
for i in
range
(100
,200):
s =0for j in
range(2
, i)
:if i % j !=0:
s +=
1continue
else
:break
if s == i -2:
print
(i)
注意事項:
對每乙個數進行求餘,如果不能夠整除,則對s加一,對該數的判斷結束後,進行判斷:s == i-2(對除1和自身以外數進行判斷)
方法四:
for i in
range
(101
,200):
list01 =
for j in
range(2
, i)
:str
(i % j))if
"0"not
in list01:
print
(i)
注意事項:
這種方法是在方法三的基礎上改進的,對每個數求餘的結果存入列表中,再判斷0是否在列表中即可。
Python 判斷素數
乙個大於1的自然數,除了1和它本身外,不能被其他自然數 質數 整除 2,3,5,7等 換句話說就是該數除了1和它本身以外不再有其他的因數。以下是判斷素數的函式 1 defisprime n 2if n 1 3return false 4for i in range 2,n 5if n i 0 6re...
python判斷素數的方法簡書 判斷素數
素數的定義 素數 又稱質數。是大於1自然數中的除了自身和1以外不能別其他數整除的數字。第一種方法 利用這個素數的定義,我們可以得出第一種判斷素數的方法 int isprime1 int n int i 0 2是素數 if n 3 return n 1 當n不能被除了1和n自身整除的數外的數是素數 f...
Python例項 判斷素數
判斷素數 date 2019 11 12 writer 無名十三 defisprime a,b 定義乙個判斷素數的函式 list prime 建立乙個空列表,用於接收a與b之間的素數 for i in range a,b 1 for j in range 2 i 1 if j i if i j 0 ...