โปรแกรมหาจำนวนเฉพาะ (Python)

วันที่โพสต์

หมวดหมู่

โปรแกรมนี้ใช้หาจำนวนเฉพาะทั้งหมดในช่วงตัวเลขที่ผู้ใช้ป้อนเข้ามา โปรแกรมจะตรวจสอบทีละตัวเลขว่าหารด้วย 2 ถึงตัวเลขที่น้อยกว่าตัวมันเองลงตัวหรือไม่ ถ้าหารลงตัว แสดงว่าไม่ใช่จำนวนเฉพาะ แต่ถ้าหารไม่ลงตัว แสดงว่าเป็นจำนวนเฉพาะ

จำนวนเฉพาะ คือจำนวนเต็มบวกที่มากกว่า 1 และมีตัวหารที่เป็นบวกอยู่ 2 ตัว คือ 1 กับตัวมันเอง กล่าวอีกนัยหนึ่งก็คือ จำนวนเฉพาะคือ จำนวนที่หารด้วย 1 กับตัวมันเองลงตัวเท่านั้น ตัวอย่างเช่น 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89 ,97 เป็นจำนวนเฉพาะ

คุณสมบัติของจำนวนเฉพาะ:

  • 1 ไม่ใช่จำนวนเฉพาะ
  • 2 เป็นจำนวนเฉพาะเพียงตัวเดียวที่เป็นจำนวนคู่
  • จำนวนเฉพาะมีจำนวนอนันต์
  • ทฤษฎีบทมูลฐานของเลขคณิตกล่าวว่า จำนวนเต็มบวกทุกตัวสามารถเขียนได้ในรูปผลคูณของจำนวนเฉพาะ และเขียนได้แบบเดียวเท่านั้น

ตัวอย่างการหาจำนวนเฉพาะ:

  • 7 เป็นจำนวนเฉพาะ เพราะว่าหารด้วย 1 กับ 7 เท่านั้น
  • 6 ไม่ใช่จำนวนเฉพาะ เพราะว่าหารด้วย 1, 2, 3, 6 ลงตัว

โค้ดคำสั่งภาษา Python


def is_prime(num):
  # ฟังก์ชันนี้ตรวจสอบว่าตัวเลขที่ป้อนเข้ามาเป็นจำนวนเฉพาะหรือไม่
  if num <= 1:
    return False
  for i in range(2, int(num**0.5) + 1):
    if num % i == 0:
      return False
  return True

start_num = int(input("ป้อนตัวเลขเริ่มต้น: "))
end_num = int(input("ป้อนตัวเลขสิ้นสุด: "))

print("จำนวนเฉพาะในช่วง",start_num,"ถึง",end_num,"มีดังนี้ : ")
for num in range(start_num, end_num + 1):
  if is_prime(num):
     print(num)

คำอธิบายโค้ด

  • ฟังก์ชัน is_prime:
    • ฟังก์ชันนี้รับตัวเลข (num) เป็นอาร์กิวเมนต์
    • ตรวจสอบว่า num น้อยกว่าหรือเท่ากับ 1 หรือไม่
      • ถ้าใช่ แสดงว่าไม่ใช่จำนวนเฉพาะ (return False)
    • วนลูปจาก 2 ไปจนถึง √num
      • ตรวจสอบว่า num หารด้วย i ลงตัวหรือไม่
        • ถ้าใช่ แสดงว่าไม่ใช่จำนวนเฉพาะ (return False)
    • ถ้าผ่านเงื่อนไขทั้งหมด แสดงว่า num เป็นจำนวนเฉพาะ (return True)

เนื้อหา
ที่เกี่ยวข้อง