python基礎練習題(題目 判斷101-200之間有多少個素數,並輸出所有素數。)


day7

---------------------------------------------------------------

實例012:100到200的素數

題目 判斷101-200之間有多少個素數,並輸出所有素數。

怎么判斷一個數是素數,就是除了1與其本身外,不能被其他數整除的數。1就不用考慮了,而其他數的范圍為平方根之內就行:

 1 import math
 2 
 3 a = input("請輸入兩個數,以英文逗號隔開:")
 4 a = a.split(",")
 5 list = []
 6 for i in range(int(a[0]),int(a[1])+1):
 7     for j in range(2,int(math.sqrt(i))+1):
 8         if i % j == 0:
 9             break
10     else:
11         list.append(i)
12 print("其中素數有%s,共有%d個" % (list,len(list)))

看下答案有兩種,其中較為簡潔的和我上面一樣,哈哈哈,我還是想到了的,另外一種如下,用flag標記是否找到了整除的數,也是個思路:

 1 import math
 2 for i in range(100,200):
 3     flag=0
 4     for j in range(2,round(math.sqrt(i))+1):
 5         if i%j==0:
 6             flag=1
 7             break
 8     if flag:
 9         continue
10     print(i)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM