18 พฤศจิกายน, 2552

Python : ตรวจสอบว่าเป็นจำนวนเฉพาะหรือไม่ (Prime Number)

จำนวนเฉพาะคือ เลขที่น้อยกว่าหรือเท่ากับ รากที่สองของจำนวนที่ต้องการหา และหารเลขจำนวนนั้นไม่ลงตัว




def is_prime(n):
import math
n = abs(n)
i = 2
while i <= math.sqrt(n): # เช็คว่าน้อยกว่าหรือเท่ากับรากที่สองของจำนวนที่ต้องการหา
if n % i == 0: # ถ้าหารลงตัวก็แสดงว่าไม่ใช่จำนวนเฉพาะ
return False
i += 1 # เพิ่มค่าไปเรื่อยๆจนกว่าจะผิดเงื่อนไข
return True



ที่มา: http://pthree.org/2007/09/05/prime-numbers-in-python/

ไม่มีความคิดเห็น: