ट्रैक
/
AWK
AWK
/
अभ्यास
/
गीगासेकंड
गीगासेकंड

गीगासेकंड

आसान

परिचय

हम समय को जिस तरह मापते हैं, वह थोड़ा उलझा हुआ है। एक मिनट में 60 सेकंड होते हैं, और एक घंटे में 60 मिनट। यह प्राचीन बैबिलोन से आया है, जहाँ लोग अपनी संख्या प्रणाली का आधार 60 रखते थे। एक दिन में 24 घंटे होते हैं, एक सप्ताह में 7 दिन, और एक महीने में कितने दिन होते हैं? और महीने के दिनों की बात करें, तो वे इस पर निर्भर करते हैं कि कौन-सा महीना है, और यह भी कि आपके देश में किस तरह का कैलेंडर इस्तेमाल होता है।

क्या हो अगर हम समय के अंतराल बताने के लिए सिर्फ सेकंड इस्तेमाल करें? तब हम बड़ी संख्या में सेकंड को आसानी से समझ आने वाली मात्राओं में लिखने के लिए मीट्रिक प्रणाली के उपसर्ग लगा सकते हैं।

  • किसी खाने की विधि में लिखा हो सकता है कि ब्राउनी को ओवन में दो किलोसेकंड (यानी दो हज़ार सेकंड) तक पकने दीजिए।
  • शायद आप और आपका परिवार दो मेगासेकंड (यानी बीस लाख सेकंड) के लिए किसी अनोखी जगह घूमने जाएँ।
  • और अगर आपकी और आपके जीवनसाथी की शादी को सौ करोड़ सेकंड हो चुके हों, तो आप अपनी एक गीगासेकंड सालगिरह मनाएँगे।
Note

अगर हम कभी मंगल या किसी और ग्रह पर बस जाएँ, तो समय मापना और भी उलझा हुआ हो जाएगा। कोई "साल" कहे, तो उसका मतलब धरती का साल होगा या मंगल का?

इस अभ्यास का विचार लेखक Vernor Vinge के विज्ञान कथा उपन्यास "A Deepness in the Sky" से आया है। इसमें लेखक समय मापने के लिए मीट्रिक प्रणाली को आधार बनाते हैं।

निर्देश

आपका काम है किसी दी गई तारीख से एक गीगासेकंड बाद की तारीख और समय पता करना।

एक गीगासेकंड एक अरब सेकंड होता है। यानी एक के बाद नौ शून्य।

अगर आपका जन्म 24 जनवरी, 2015 को 22:00 बजे (रात 10:00:00) हुआ हो, तो 2 अक्टूबर, 2046 को 23:46:40 बजे (रात 11:46:40) आपकी उम्र एक गीगासेकंड की हो जाएगी।

समय फंक्शन

इस अभ्यास में GNU awk के समय फंक्शन इस्तेमाल करने की ज़रूरत पड़ती है।

डेटटाइम पार्स करने और फॉर्मैट करने वाले फंक्शनों के लिए UTC फ्लैग ज़रूर सेट कीजिए। इसे देखिए:

export TZ=Asia/Kolkata
gawk 'BEGIN {
    time = 1234567890
    print strftime("%Y-%m-%d %T", time)     # format for local timezone
    print strftime("%Y-%m-%d %T", time, 1)  # format for UTC
}'

इसका आउटपुट यह होता है:

2009-02-14 05:01:30
2009-02-13 23:31:30
GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
AWK Exercism

गीगासेकंड शुरू करने के लिए तैयार हैं?

Exercism पर साइन अप कीजिए और AWK को 3 कॉन्सेप्ट92 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।