1. 程式人生 > >50道程式設計小題目之【質數的個數】

50道程式設計小題目之【質數的個數】

題目:判斷101-200之間有多少個素數,並輸出所有素數。
程式分析:判斷素數的方法:用一個數分別去除2到sqrt(這個數),如果能被整除, 則表明此數不是素數,反之是素數。
素數(質數)定義:一個大於1的自然數,除了1和它本身外,不能被其他自然數整除

把題目改了一下,可以自定義查詢的範圍,不限定在101-200之間。

Python的解題程式碼:

import math
s_begin=int(input("請輸入開始查詢的數:"))
s_end=int(input("請輸入結束查詢的數:"))
js_1=0
js=0
js_str=""
for i in range(s_begin,s_end+1
): for j in range(2,int(math.sqrt(i))+1): if i%j== 0 : js_1=js_1+1 if js_1==0 : js=js+1 js_str=js_str +str(i)+"," js_1=0 print(str(s_begin)+"-"+str(s_end)+"之間的質數有 "+str(js)+" 個") print("分別是:"+ js_str)

除錯結果為:

請輸入查詢範圍的開始數:101
請輸入查詢範圍的結束數:200
101-200之間的質數有 21 個
分別是:101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,