ไพรม์ไทม์!

Mar 01 2023
Doug เพื่อนของฉันส่งคำขอคุณลักษณะสำหรับนาฬิการะบบเมตริกแสงอาทิตย์: เพิ่มตัวบ่งชี้ที่แจ้งให้คุณทราบเมื่อถึงเวลาที่แสดงเป็นตัวเลขเฉพาะ สิ่งนี้สอดคล้องกับความหลงใหลในจำนวนเฉพาะของฉันและความปรารถนาของฉันที่จะสานต่อโครงการนี้อย่างไม่รู้จบ

Dougเพื่อนของฉันขอคุณสมบัติสำหรับนาฬิการะบบเมตริกแสงอาทิตย์ : เพิ่มตัวบ่งชี้ที่แจ้งให้คุณทราบเมื่อถึงเวลาที่แสดงเป็นตัวเลขเฉพาะ สิ่งนี้สอดคล้องกับความหลงใหลในจำนวนเฉพาะของฉันและความปรารถนาของฉันที่จะสานต่อโครงการนี้อย่างไม่รู้จบ

แน่นอนฉันทำมัน

ฉันตัดสินใจที่จะไม่ถือว่าเวลา hh:mm เป็นตัวเลขเดียวสำหรับจุดประสงค์นี้ ชั่วโมงและนาทีนับจำนวนต่างกัน ดังนั้นจึงไม่ถูกต้องที่จะถือว่าเป็นสเกลาร์ แต่ทั้งสุริยคติและเวลาเมตริกท้องถิ่นก็มีความหมายเหมือนสเกลาร์

ฉันคิดว่าฉันจะคำนวณจำนวนเฉพาะทั้งหมดที่น้อยกว่าจำนวนที่แสดงได้สูงสุด (9999) เมื่อเริ่มต้น บันทึกเป็นเวกเตอร์กระจัดกระจาย และทำการค้นหาอย่างรวดเร็วตามความต้องการเพื่อดูว่าเวลาเป็นจำนวนเฉพาะหรือไม่ ดั๊กและฉันได้พูดคุยเกี่ยวกับวิธีการ เขาให้เหตุผลว่าถ้า Elon จะทำการเปลี่ยนแปลงใดๆ กับการจำลองที่เราอาศัยอยู่ทั้งหมด จำนวนเฉพาะอาจเปลี่ยนแปลงได้ ดังนั้นจะปลอดภัยที่สุดหากคำนวณขณะเปิดเครื่อง นั่นสมเหตุสมผลแล้ว

น่าเสียดายที่บอร์ด Arduino Uno Wifi Rev2 ของฉันไม่มีหน่วยความจำเพียงพอสำหรับโครงสร้างข้อมูลของอัลกอริทึม Sieve of Eratosthenes และเวกเตอร์การค้นหาที่ฉันต้องการใช้ สิ่งที่น่าสนใจอย่างหนึ่งเกี่ยวกับแพลตฟอร์มการคำนวณของ Arduino ก็คือการจำกัดทรัพยากร ฉันต้องย้อนกลับไปเขียนแอปพลิเคชันบน Apple II เมื่อฉันอยู่มัธยม: คุณต้องใส่ใจกับการทำสิ่งเล็ก ๆ และมีประสิทธิภาพ

ปรากฎว่าคุณสามารถกำหนดลำดับความสำคัญของจำนวนใด ๆ ได้ถึง 10,000 โดยตรวจสอบการหารด้วยจำนวนเฉพาะจนถึงจำนวนเฉพาะแรกหลังจากรากที่สองของ 10,000 นี่ไม่เพียงพอสำหรับปัจจัยการคำนวณ เพียงเพื่อกำหนดลำดับความสำคัญ ฉันจะไม่พูดถึงทฤษฎีจำนวนที่นี่เพราะมันสนุกที่จะคิดออกเอง

ฉันฮาร์ดโค้ดอาร์เรย์ [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, 101] ลงในนาฬิกาและทดสอบการหารทุกครั้งที่ฉันวาดเวลาเมตริกบนหนึ่งในจอแสดงผล 7 ส่วนที่มี 4 หลัก วิธีนี้ค่อนข้างมีประสิทธิภาพ: ครึ่งหนึ่งของตัวเลขจะถูกลบออกโดยการทดสอบกับ 2 และอื่น ๆ

เมื่อถึงเวลาสำคัญ ฉันจะจุดทศนิยมให้สว่างขึ้นตามตัวเลขสุดท้าย:

เวลาเมตริกในท้องถิ่นนั้นยอดเยี่ยม!

ฉันสนุกกับการสังเกตเมื่อถึงเวลาสำคัญ มันเกิดขึ้นค่อนข้างบ่อยที่ทั้งเวลาสุริยคติและเวลาเมตริกท้องถิ่นที่แสดงเป็นช่วงเวลาสำคัญ นั่นเป็นสองเท่าของเอ็นโดรฟินทางทฤษฎีตัวเลข!