प्राइमटाइम!

Mar 01 2023
मेरे दोस्त डौग ने सौर मीट्रिक घड़ी के लिए एक फीचर अनुरोध किया: एक संकेतक जोड़ें जो आपको बताता है कि कब प्रदर्शित समय एक अभाज्य संख्या है। यह primes के साथ मेरे जुनून और इस परियोजना के साथ अंतहीन रूप से जुड़े रहने की मेरी इच्छा के अनुरूप है।

मेरे दोस्त डौग ने सौर मीट्रिक घड़ी के लिए एक फीचर अनुरोध किया : एक संकेतक जोड़ें जो आपको बताता है कि कब प्रदर्शित समय एक अभाज्य संख्या है। यह primes के साथ मेरे जुनून और इस परियोजना के साथ अंतहीन रूप से जुड़े रहने की मेरी इच्छा के अनुरूप है।

तो बेशक मैंने किया।

मैंने इस उद्देश्य के लिए एचएच: एमएम समय को एक ही संख्या के रूप में नहीं मानने का फैसला किया। घंटे और मिनट अलग-अलग मात्राओं की गिनती कर रहे हैं, इसलिए इसे स्केलर के रूप में मानना ​​सही नहीं लगता। लेकिन दोनों सौर और स्थानीय मीट्रिक समय अदिश के रूप में समझ में आता है।

मैंने सोचा कि मैं स्टार्टअप पर अधिकतम प्रदर्शित करने योग्य संख्या (9999) से कम सभी अभाज्य संख्याओं की गणना करूंगा, उन्हें विरल वेक्टर में सहेजूंगा और यह देखने के लिए मांग पर तेजी से खोज करूंगा कि क्या समय प्रमुख था। डौग और मैंने दृष्टिकोण के बारे में बात की। उन्होंने तर्क दिया कि, यदि एलोन उस सिमुलेशन में कोई बदलाव करता है जिसमें हम सभी रहते हैं, तो अभाज्य संख्याएँ बदल सकती हैं, इसलिए पावर अप पर उनकी गणना करना सबसे सुरक्षित होगा। यह समझ में आया।

दुर्भाग्य से, मेरे Arduino Uno Wifi Rev2 बोर्ड में एराटोस्थनीज एल्गोरिथम की डेटा संरचनाओं की छलनी और मेरे द्वारा उपयोग किए जाने वाले लुकअप वेक्टर के लिए पर्याप्त मेमोरी नहीं है। 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] घड़ी में और प्रत्येक बार विभाज्यता के लिए परीक्षण करें जब मैं 4-अंकों, 7-सेगमेंट डिस्प्ले में से किसी एक पर मीट्रिक समय पेंट करता हूं। यह वास्तव में काफी कुशल है: 2 के खिलाफ परीक्षण करके आधी संख्या को समाप्त कर दिया जाता है, और इसी तरह।

जब समय प्रमुख होता है, तो मैं अंतिम अंक के बाद दशमलव बिंदु को रोशन करता हूं:

स्थानीय मीट्रिक समय प्रमुख है!

जब यह प्राइम टाइम होता है तो मुझे यह देखना अच्छा लगता है। यह बहुत बार होता है कि प्रदर्शित सौर और स्थानीय मीट्रिक समय दोनों प्रमुख होते हैं। यह संख्या-सैद्धांतिक एंडोर्फिन का दोहरा झटका है!