ดูหนึ่งข้อความ
  #4  
Old 09 มกราคม 2005, 20:06
ToT's Avatar
ToT ToT ไม่อยู่ในระบบ
จอมยุทธ์หน้าหยก
 
วันที่สมัครสมาชิก: 13 สิงหาคม 2001
ข้อความ: 154
ToT is on a distinguished road
Post

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

แต่ในทางปฎิบัติจริงๆแล้ว ไม่จำเป็นต้องไล่หารไปซะทุกตัวครับ หารถึงแค่รากที่สองของจำนวนที่จะทดสอบก็ได้แล้ว เพราะ จำนวนเต็มบวก n จะไม่เป็นจำนวนเฉพาะ ก็ต่อเมื่อ มีตัวไปหารแล้วลงตัวอย่างน้อยหนึ่งตัว สมมติว่าแยกได้เป็น a x b พบว่า ถ้ามีตัวประกอบที่มากกว่า sqrt(n) เป็นตัวประกอบ ก็จะมีตัวประกอบที่น้อยกว่า sqrt(n) ด้วย ( ก็จะเกิดการหารลงตัวขึ้น ) ดังนั้นเราจึงไม่จำเป็นต้องหารไปจนครบครับ ยิ่ง n มากๆ ก็จะยิ่งเห็นได้ชัด

นี่เป็นวิธีเบื้องต้นในการตรวจจำนวนเฉพาะครับ คิดว่าคำตอบที่คนถามต้องการน่าจะหมายถึงแบบนี้มากกว่า
__________________
Mmmm ....
ตอบพร้อมอ้างอิงข้อความนี้