ट्रैक
/
Lean
Lean
/
अभ्यास
/
प्रतिरोधक रंग
प्रतिरोधक रंग

प्रतिरोधक रंग

मध्यम

निर्देश

अगर आप Raspberry Pi से कुछ बनाना चाहते हैं, तो आपको शायद प्रतिरोधक इस्तेमाल करने पड़ेंगे। इस अभ्यास के लिए आपको इनके बारे में दो बातें जाननी ज़रूरी हैं:

  • हर प्रतिरोधक की एक प्रतिरोध वैल्यू होती है।
  • प्रतिरोधक छोटे होते हैं। इतने छोटे कि अगर उन पर प्रतिरोध वैल्यू छापी जाए, तो उसे पढ़ना मुश्किल हो जाएगा।

इस समस्या से निपटने के लिए निर्माता प्रतिरोधकों पर रंगों वाली पट्टियाँ छापते हैं, जो उनकी प्रतिरोध वैल्यू दर्शाती हैं। हर पट्टी का एक स्थान होता है और एक संख्यात्मक वैल्यू होती है।

किसी प्रतिरोधक की पहली 2 पट्टियों का एनकोडिंग तरीका बहुत आसान है: हर रंग एक ही संख्या से जुड़ा होता है।

इस अभ्यास में आप एक ऐसा प्रोग्राम बनाएँगे जो आपकी मदद करेगा, ताकि आपको पट्टियों की वैल्यू याद रखने की ज़रूरत न पड़े।

इन रंगों का कोड इस तरह है:

  • black: 0
  • brown: 1
  • red: 2
  • orange: 3
  • yellow: 4
  • green: 5
  • blue: 6
  • violet: 7
  • grey: 8
  • white: 9

इस अभ्यास का उद्देश्य एक ऐसा तरीका बनाना है जिससे आप:

  • किसी खास रंग वाली पट्टी से जुड़ी संख्यात्मक वैल्यू देख सकें
  • पट्टियों के अलग-अलग रंगों की सूची बना सकें

याद रखने की तरकीबें रंगों को उन संख्याओं से जोड़ती हैं, जो ऐरे में रखी जाने पर संयोग से ऐरे में अपने इंडेक्स के बराबर होती हैं: Better Be Right Or Your Great Big Values Go Wrong.

प्रतिरोधकों के रंग कोड के बारे में अधिक जानकारी इलेक्ट्रॉनिक रंग कोड पर विकिपीडिया का लेख में मिल सकती है।

सिंटैक्स परिभाषित कीजिए

इस अभ्यास में आपको c* प्रीफिक्स का इस्तेमाल करके रंगों के लिए सिंटैक्स परिभाषित करना है, जैसे c*black. निर्देशों के अनुसार, कंपाइल समय पर यह सिंटैक्स हर रंग की संबंधित वैल्यू में विस्तारित होना चाहिए, जिसका टाइप Fin 10 है। इसी तरह, आपको c*all का इस्तेमाल करके सभी रंग वैल्यू वाले ऐरे के लिए सिंटैक्स परिभाषित करना है।

इस काम के लिए शायद आपको नोटेशन या मैक्रो में से किसी एक का इस्तेमाल करना पड़े। चाहें तो आप एक संदर्भ देख सकते हैं।

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

अगर आप अपने कंप्यूटर पर या Lean के ऑनलाइन प्लेग्राउंड पर काम करते हैं, तो Lean InfoView के ज़रिए आपको तुरंत पता चल जाएगा कि कोई प्रमेय सफल होता है या असफल, और असफल होने का कारण क्या है।

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

प्रतिरोधक रंग शुरू करने के लिए तैयार हैं?

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