ก่อนอื่นเราต้องรู้ว่าจำนวนเฉพาะคืออะไร
จำนวนเฉพาะเป็นจำนวนเต็มบวกเสมอและหารด้วยจำนวนเต็ม 2 ตัว (1 และตัวตัวเลขเอง) ลงตัว 1 ไม่ใช่จำนวนเฉพาะ
ตอนนี้เราจะพูดถึงวิธีการบางอย่างในการค้นหา Prime Number
วิธีที่1
การใช้ For loops
ตัวอย่าง
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
สำหรับลูปที่มีการพัก
ตัวอย่าง
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
สำหรับลูป ตัวแบ่ง และรากที่สอง
ตัวอย่าง
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