ลำดับจำนวนเฉพาะ
จำนวนเฉพาะคือจำนวนธรรมชาติที่หารลงตัวได้เฉพาะด้วย 1 หรือตัวเอง (เช่น 3, 7, 11 เป็นต้น) ทั้งนี้ 1 ไม่ถือเป็นจำนวนเฉพาะ
โจทย์คือ กำหนดรายการตัวเลขที่ต้องการตรวจสอบไว้ในตัวแปร cands ให้กรองเฉพาะจำนวนเฉพาะและเก็บไว้ในรายการใหม่ชื่อ primes
แต่ก่อนอื่น ต้องสร้างฟังก์ชัน is_prime() ที่คืนค่า True หากตัวเลข \(n\) ที่รับเข้ามาเป็นจำนวนเฉพาะ หรือคืนค่า False ในกรณีอื่น วิธีที่ใช้ได้คือทดสอบว่าตัวเลขนั้นหารไม่ลงตัวด้วยจำนวนเต็มใดๆ ตั้งแต่ 2 ถึง \(\sqrt{n}\)
เคล็ดลับ: อาจต้องใช้ตัวดำเนินการ % ซึ่งคำนวณเศษจากการหาร (เช่น 8 % 3 มีค่าเป็น 2)
โมดูล math ถูก import ไว้ให้แล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
ฝึกทำโจทย์สัมภาษณ์งานเขียนโค้ดด้วย Python
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
def is_prime(n):
# Define the initial check
if n < ____:
return ____
# Define the loop checking if a number is not prime
for i in range(____, ____):
if ____:
return False
return True