समय का रखवाला


यह अभ्यास मुख्य रूप से समय की अवधियों के बारे में है, लेकिन इसे समय से जुड़े किसी सामान्य अभ्यास के लिए भी इस्तेमाल किया जा सकता है।

कहानी

सारा एक समय-रक्षक है। वास्तव में वह सबसे अच्छी है। जब बच्चे उससे पूछते हैं कि एक समय-रक्षक क्या करता है, तो उसे उन्हें सफेद रेत से भरा एक मर्तबान दिखाना बहुत पसंद है। देखो, वह कहती है, "मैं समय को सुरक्षित रख रही हूँ!"

उसका वास्तविक काम इतना रोमांटिक नहीं है, लेकिन उसके लिए यह फिर भी बहुत दिलचस्प और संतोष देने वाला काम है। वह दुनिया भर के खेल आयोजनों तक अपने साथ समय मापने के उपकरणों से भरा बैग लेकर जाती है और हर खिलाड़ी का समय मापती है।

इस अभ्यास में आप उस नए टाइमिंग सॉफ्टवेयर के लिए कुछ फंक्शन लिखेंगे जिसे बनाने के लिए सारा ने आपसे कहा है। यहाँ कोई गलती नहीं हो सकती, वरना अगर बाद में सॉफ्टवेयर में कोई बग मिल गया तो अगला विश्व रिकॉर्ड मान्य नहीं रहेगा! क्या आप यह ज़िम्मेदारी उठाने के लिए तैयार हैं?

नोट्स

समय मापने वाले हार्डवेयर से आने वाला डेटा सामान्यतः एक टाइम स्टैम्प होता है (समय, डेटटाइम या समय क्षेत्र के साथ भी)। इसकी सटीकता बहुत अधिक होती है, सामान्यतः 1 मिलीसेकंड तक और कभी-कभी 100 माइक्रोसेकंड तक भी। हर हार्डवेयर डिवाइस में एक आंतरिक घड़ी होती है, जिसे बाकी सभी डिवाइसों के साथ सिंक करना ज़रूरी है।

कार्य

ये ऐसे उदाहरण कार्य हैं जो समय-रक्षक अभ्यास के लिए उपयुक्त हैं:

  • अवधि पाने के लिए शुरू और समाप्ति के समय का अंतर निकालिए।
  • एक टाइमिंग डिवाइस किसी और समय क्षेत्र में है। अलग-अलग समय क्षेत्रों वाले 2 समयों का अंतर निकालिए।
  • एक टाइमिंग डिवाइस पर इंटरनेट कनेक्शन नहीं है। पहले 10 धावकों के लिए एक मददगार फोन पर आपको दर्ज समय पढ़कर सुनाता है। ये समय "10h5m19.234s" प्रारूप में दर्ज किए जाते हैं, जिसे पार्स करना ज़रूरी है।
  • शुरुआत का समय जल्दी दर्ज हो गया था, जिसे बैकअप वीडियो कैमरे ने रिकॉर्ड किया था। गलत शुरू समय में से दी गई अवधि घटाकर नया शुरू समय दोबारा निकालिए।
  • किसी आयोजन के दौरान बहुत सारे भटके हुए समय दर्ज हो जाते हैं। उन सभी "अनचाहे" समयों को अनदेखा करने के लिए समय-रक्षक किसी टाइमिंग डिवाइस से आने वाले समय को शुरुआत के बाद सिर्फ एक तय समय-सीमा में ही स्वीकार कर सकती है। जैसे शुरुआत के बाद 10 मिनट से 30 मिनट के बीच। एक फिल्टर फंक्शन बनाइए जो start time (टाइम स्टैम्प), from और to (अवधियाँ) तथा detection (टाइम स्टैम्प) इनपुट लेता है।
  • लीडरबोर्ड पर किसी अवधि का आउटपुट "1h5m19.234s +4.843" प्रारूप में दिखाइए, जहाँ +4.843 पहले स्थान वाले खिलाड़ी यानी लीडर से अंतर है।

कार्यान्वयन

  • अभी कोई नहीं

संबंधित