ในบทช่วยสอนนี้ เราจะมาสำรวจวิธีการต่างๆ เพื่อค้นหาว่าตัวเลขที่ระบุนั้นถูกต้องหรือไม่ มาเริ่มกันเลยดีกว่า
วิธีที่-1
เป็นวิธีการทั่วไปในการหาจำนวนเฉพาะ
-
หากตัวเลขน้อยกว่าหรือเท่ากับหนึ่ง ให้คืนค่าเท็จ
-
หากตัวเลขหารด้วยตัวเลขใดๆ ลงตัว ฟังก์ชันจะคืนค่าเป็น "เท็จ"
-
หลังจากวนซ้ำ ให้คืนค่า True
ตัวอย่าง
# checking for prime
def is_prime(n):
if n <= 1:
return False
else:
for i in range(2, n):
# checking for factor
if n % i == 0:
# return False
return False
# returning True
return True
print(f"Is 2 prime: {is_prime(2)}")
print(f"Is 4 prime: {is_prime(4)}")
print(f"Is 7 prime: {is_prime(7)}") ผลลัพธ์
หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้
Is 2 prime: True Is 4 prime: False Is 7 prime: True
วิธีที่ 2
ในวิธีนี้ เรากำลังลดจำนวนการวนซ้ำโดยตัดให้เป็นสแควร์รูทของ n มาดูโค้ดกัน
ตัวอย่าง
import math
# checking for prime
def is_prime(n):
if n <= 1:
return False
else:
# iterating loop till square root of n
for i in range(2, int(math.sqrt(n)) + 1):
# checking for factor
if n % i == 0:
# return False
return False
# returning True
return True
print(f"Is 2 prime: {is_prime(2)}")
print(f"Is 4 prime: {is_prime(4)}")
print(f"Is 7 prime: {is_prime(7)}") ผลลัพธ์
หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้
Is 2 prime: True Is 4 prime: False Is 7 prime: True
วิธีที่-3
ในวิธีก่อนหน้านี้ เราได้ตรวจสอบเลขคู่แล้ว เราทุกคนรู้ว่าเลขคู่ไม่เป็นจำนวนเฉพาะยกเว้นสองตัว ดังนั้น ในวิธีนี้ เราจะลบค่าคู่ทั้งหมดเพื่อลดเวลา
ตัวอย่าง
import math
# checking for prime
def is_prime(n):
# checking for less than 1
if n <= 1:
return False
# checking for 2
elif n == 2:
return True
elif n > 2 and n % 2 == 0:
return False
else:
# iterating loop till square root of n
for i in range(3, int(math.sqrt(n)) + 1, 2):
# checking for factor
if n % i == 0:
# return False
return False
# returning True
return True
print(f"Is 2 prime: {is_prime(2)}")
print(f"Is 4 prime: {is_prime(4)}")
print(f"Is 7 prime: {is_prime(7)}") ผลลัพธ์
หากคุณเรียกใช้โค้ดด้านบน คุณจะได้ผลลัพธ์ดังต่อไปนี้
Is 2 prime: True Is 4 prime: False Is 7 prime: True
บทสรุป
หากคุณมีข้อสงสัยในบทช่วยสอน ให้พูดถึงในส่วนความคิดเห็น