Python 中查詢質數的不同方法


首先我們需要知道質數是什麼。

一個質數永遠是一個正整數,且只能被兩個整數(1 和這個數本身)整除,1 不是質數。

現在我們來討論幾種尋找質數的方法。

方法 1

使用 For 迴圈

示例

def primemethod1(number):
   # Initialize a list
   my_primes = []
   for pr in range(2, number):
      isPrime = True
   for i in range(2, pr):
   if pr % i == 0:
      isPrime = False
   if isPrime:
      my_primes.append(pr)
   print(my_primes)
primemethod1(50)

輸出

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47]

方法 2

For 迴圈與 Break

示例

def primemethod2(number):
   # Initialize a list
   my_primes = []
   for pr in range(2, number + 1):
      isPrime = True
   for num in range(2, pr):
   if pr % num == 0:
      isPrime = False
   break
      if isPrime:
   my_primes.append(pr)
return(my_primes)
print(primemethod2(50))

輸出

[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47]

方法 3

For 迴圈、Break 和平方根

示例

def primemethod3(number):
   # Initialize a list
   primes = []
   for pr in range(2, number):
      isPrime = True
   for num in range(2, int(pr ** 0.5) + 1):
   if pr % num == 0:
      isPrime = False
      break
   if (isPrime):
print("Prime number: ",pr)
primemethod3(50)

輸出

Prime number: 2
Prime number: 3
Prime number: 5
Prime number: 7
Prime number: 11
Prime number: 13
Prime number: 17
Prime number: 19
Prime number: 23
Prime number: 29
Prime number: 31
Prime number: 37
Prime number: 41
Prime number: 43
Prime number: 47

更新於: 26-6 月-2020

1K+ 瀏覽量

開啟你的 職業生涯

完成課程以獲得認證

開始
廣告
© . All rights reserved.