ट्रैक
/
Standard ML
Standard ML
/
अभ्यास
/
स्प्लिट-सेकंड स्टॉपवॉच
स्प्लिट-सेकंड स्टॉपवॉच

स्प्लिट-सेकंड स्टॉपवॉच

मध्यम

परिचय

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

निर्देश

आपको एक स्टॉपवॉच बनानी है जो लैप समय का सटीक हिसाब रखे।

स्टॉपवॉच इन चीज़ों का हिसाब रखने के लिए चार कमांड (start, stop, lap और reset) का उपयोग करती है:

  1. मौजूदा लैप का गिना जा रहा समय
  2. पहले दर्ज किए गए लैप समय

कौन-कौन से कमांड इस्तेमाल किए जा सकते हैं, यह इस पर निर्भर करता है कि स्टॉपवॉच किस स्थिति में है:

  1. तैयार: शुरुआती स्थिति
  2. चल रही: समय का हिसाब रख रही है
  3. रुकी हुई: समय का हिसाब नहीं रख रही है
कमांड शुरुआती स्थिति अंतिम स्थिति प्रभाव
Start तैयार चल रही समय का हिसाब रखना शुरू हो जाता है
Start रुकी हुई चल रही समय का हिसाब रखना फिर शुरू हो जाता है
Stop चल रही रुकी हुई समय का हिसाब रखना बंद हो जाता है
Lap चल रही चल रही मौजूदा लैप को पिछले लैप में जोड़ा जाता है, फिर मौजूदा लैप रीसेट हो जाता है
Reset रुकी हुई तैयार मौजूदा लैप रीसेट हो जाता है और पिछले लैप हटा दिए जाते हैं

कार्यान्वयन

इस अभ्यास को पूरा करने के लिए आपको stopwatch डेटा टाइप बनाना है और ये फंक्शन कार्यान्वित करने हैं:

  • newStopwatch
  • start
  • stop
  • lap
  • reset
  • advanceTime
  • getState
  • currentLap
  • total
  • previousLaps

आपको एक डमी टाइप की परिभाषा पहले से रखी मिलेगी, लेकिन फंक्शन बनाना और एक सार्थक डेटा टाइप तैयार करना आपका ही काम है।


स्रोत

Erik Schierboomयह लिंक एक नई विंडो या टैब में खुलता है
GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
Standard ML Exercism

स्प्लिट-सेकंड स्टॉपवॉच शुरू करने के लिए तैयार हैं?

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