ट्रैक
/
Gleam
Gleam
/
अभ्यास
/
हाई स्कूल का प्यार
हाई स्कूल का प्यार

हाई स्कूल का प्यार

सीखने का अभ्यास

परिचय

पाइप ऑपरेटर

|> ऑपरेटर को पाइप ऑपरेटर कहते हैं। इसका उपयोग कई फंक्शन कॉल को इस तरह एक के बाद एक जोड़ने के लिए किया जा सकता है कि पिछले फंक्शन कॉल से लौटाई गई वैल्यू अगले फंक्शन कॉल को दी जाती है।

"hello"
|> string.uppercase
|> string.append("?!")
// -> "HELLO?!"

ऊपर दिया गया कोड नीचे दिए गए कोड के बराबर है:

string.append(string.uppercase("hello"), "?!")

पाइप ऑपरेटर या तो वैल्यू को फंक्शन कॉल के पहले आर्गुमेंट के रूप में देता है, या नई कॉल के एकमात्र आर्गुमेंट के रूप में। यह चुनता है कि किस विकल्प में सही टाइप होगा।

100
|> function_that_takes_two_arguments(1)

// Is equivalent to
function_that_takes_two_arguments(100, 1)
100
|> function_that_returns_a_function(1)

// Is equivalent to
function_that_returns_a_function(1)(100)

कभी-कभी हम वैल्यू को किसी और स्थान पर देना चाहते हैं। ऐसे में _ प्लेसहोल्डर का उपयोग यह बताने के लिए किया जा सकता है कि वैल्यू कहाँ डाली जानी चाहिए।

100
|> some_function(1, _, 2)

निर्देश

इस अभ्यास में आप हाई स्कूल के प्रेमी जोड़ों को सोशल मीडिया पर अपना प्यार जताने में मदद करेंगे। इसके लिए आप उनके नाम के पहले अक्षरों से एक ASCII दिल बनाएँगे:

     ******       ******
   **      **   **      **
 **         ** **         **
**            *            **
**                         **
**     J. K.  +  M. B.     **
 **                       **
   **                   **
     **               **
       **           **
         **       **
           **   **
             ***
              *

1. नाम का पहला अक्षर निकालिए

first_letter फंक्शन लिखिए। यह एक नाम लेता है और उसका पहला अक्षर लौटाता है। यह नाम से सारी अनावश्यक व्हाइटस्पेस हटा देता है।

first_letter("Jane")
// -> "J"

2. पहले अक्षर को इनिशियल के रूप में तैयार कीजिए

initial फंक्शन लिखिए। यह एक नाम लेता है और उसका पहला अक्षर लौटाता है। पहला अक्षर बड़े अक्षर में होता है और उसके बाद एक बिंदु लगा होता है। ध्यान रखिए कि आप पिछले चरण में बनाए गए first_letter को ही दोबारा इस्तेमाल करें।

initial("Robert")
// -> "R."

3. पूरे नाम को पहले नाम और अंतिम नाम में बाँटिए

initials फंक्शन लिखिए। यह एक पूरा नाम लेता है, जिसमें पहला नाम और अंतिम नाम एक स्पेस से अलग किए होते हैं, और उनके इनिशियल लौटाता है। ध्यान रखिए कि आप पिछले चरण में बनाए गए initial को ही दोबारा इस्तेमाल करें।

initials("Lance Green")
// -> "L. G."

4. इनिशियल को दिल के अंदर रखिए

pair फंक्शन लिखिए। यह दो पूरे नाम लेता है और उनके इनिशियल एक ASCII दिल के अंदर लौटाता है। ध्यान रखिए कि आप पिछले चरण में बनाए गए initials को ही दोबारा इस्तेमाल करें।

pair("Blake Miller", "Riley Lewis")
// -> "
//      ******       ******
//    **      **   **      **
//  **         ** **         **
// **            *            **
// **                         **
// **     B. M.  +  R. L.     **
//  **                       **
//    **                   **
//      **               **
//        **           **
//          **       **
//            **   **
//              ***
//               *
// "
GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
Gleam Exercism

हाई स्कूल का प्यार शुरू करने के लिए तैयार हैं?

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