任務描述
素數是指在大於 1 的自然數中,除了 1 和它本身以外不再有其他因數的自然數。
想要完成本關任務,我們可以直接使用 while 迴圈。本關介紹的是 break 語句,break 語句可以提前結束迴圈,當迴圈達到我們的目的時,可以很大程度的提高**的執行效率。
break 語句
在之前學習 while 迴圈時,如果我們在執行語句中不改變表示式的結果,那麼**將進入無限迴圈;若是我們無法在執行語句中改變表示式結果呢?這時我們就可以使用 break 語句。break 語句是用於結束當前迴圈。
假設老師想求乙個班上 5 名同學的平均成績,分數都是通過 input 函式獲取,分數的取值範圍為 0-100,假設老師輸入時不小心輸入了乙個超出範圍的值,這時,我們就可以通過 break 語句來結束迴圈。
num = 0
sum_score = 0
while num < 5:
score = int(input()) # 每迴圈一次就輸入乙個值
if score < 0 or score > 100: # 如果輸入的分數小於0或大於100就退出迴圈
print("輸入的資料不合法,請重新輸入")
break
sum_score += score
if num == 4: # num=4的時候表示分數都輸入完成,可以計算平均分
mean_value = sum_score/5
print("平均成績為",mean_value)
num += 1
輸入資料1:
50
66906
10088
執行結果1:
輸入的資料不合法,請重新輸入
輸入資料2:
50
6690
10088
執行結果2:
平均成績為 78.8
當發生迴圈巢狀時,break 語句只能結束當前迴圈。
num = 1
while num < 4:
print("第一次迴圈")
# 正常情況下,表示式為true,第二層迴圈會無限迴圈,但是break語句讓第二層迴圈只執行了一次
while true:
print("第二層迴圈")
break
num += 1
執行結果:
第一次迴圈
第二層迴圈
第一次迴圈
第二層迴圈
第一次迴圈
第二層迴圈
通過結果可以得知,break 每次都是結束當前的第二次迴圈,並沒有結束它的上一級迴圈。
for 迴圈中也可以使用 break 語句,它也只能結束當前的 for 迴圈。
for x in range(5):
if x > 2:
break
print(x)
執行結果:
0
12`
n =
int(
input()
)if n <
2and n >0:
#判斷是否大於1的整數,且1不是素數
print
("不是素數"
)elif n >2:
for i in
range(2
,n):
if n % i ==0:
#判斷2——i是否有能被整除
print
("不是素數"
)break
else
:print
("是素數"
)else
:if n==0:
print
('輸入資料不合法'
)
python迴圈結構之for迴圈
在python中,for迴圈是應用非常廣的迴圈語句,遍歷字典 遍歷列表等等.for語句結構 for 遍歷 in 序列 執行語句 遍歷字典 lipsticks for lipstick in lipsticks print lipsticks lipstick 列印結果 香奈兒 迪奧聖羅蘭 紀梵希阿尼...
Python之迴圈結構
1.while count 0 while count 5 print hello world count 1 count count 1 2.for for i in range 5 print i else print 結束執行.range end 0 end 1 range start,end...
python之迴圈結構
while迴圈結構 格式 while 表示式 語句塊執行流程 當程式執行到while語句時,首先判斷表示式的真假。若表示式的值為真,則執行縮排的語句塊,之後返回表示式繼續判斷 若表示式的值為假,則跳過縮排的語句塊執行。說明 for x in y 語句快 執行流程 x一次代表y種的乙個元素,遍歷結束迴...