ट्रैक
/
C#
C#
/
अभ्यास
/
अंतरराष्ट्रीय कॉलिंग के पारखी
अंतरराष्ट्रीय कॉलिंग के पारखी

अंतरराष्ट्रीय कॉलिंग के पारखी

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

परिचय

डिक्शनरी

डिक्शनरी एलिमेंट का एक संग्रह है। इसमें हर एलिमेंट एक की और एक वैल्यू से मिलकर बनता है। अगर डिक्शनरी के किसी मेथड को कोई की दी जाए, तो वह उससे जुड़ी वैल्यू लौटा देता है। दूसरी भाषाओं में मैप या असोसिएटिव ऐरे जो भूमिका निभाते हैं, वही भूमिका इसकी भी होती है।

डिक्शनरी इस तरह बनाई जा सकती है:

new Dictionary<int, string>();
// Empty dictionary

या

new Dictionary<int, string>
{
    [1] = "One",
    [2] = "Two"
};

// Or

new Dictionary<int, string>
{
    {1, "One"},
    {2, "Two"}
};
// 1 => "One", 2 => "Two"

ध्यान दीजिए कि की और वैल्यू के टाइप डिक्शनरी की परिभाषा का ही हिस्सा होते हैं।

डिक्शनरी बन जाने के बाद उसमें एंट्री जोड़ी या हटाई जा सकती हैं। इसके लिए उसके अंदर बने मेथड Add और Remove काम आते हैं।

डिक्शनरी की वैल्यू निकालने या बदलने का काम की के ज़रिए डिक्शनरी में इंडेक्स करके किया जाता है:

var numbers = new Dictionary<int, string>
{
   {1, "One"},
   {2, "Two"}
};

// Set the value of the element with key 2 to "Deux"
numbers[2] = "Deux";

// Get the value of the element with key 2
numbers[2];
// => "Deux"

कोई वैल्यू डिक्शनरी में मौजूद है या नहीं, यह आप इस तरह जाँच सकते हैं:

var dict = new Dictionary<string, string>{/*...*/};
dict.ContainsKey("some key that exists");
// => true

डिक्शनरी पर एन्यूमरेट करने पर उसके की-वैल्यू जोड़ों पर एन्यूमरेट होता है। डिक्शनरी में ऐसी प्रॉपर्टी भी होती हैं जिनसे उसकी की या वैल्यू पर एन्यूमरेट किया जा सकता है।

निर्देश

इस अभ्यास में आप एक अंतर्राष्ट्रीय डायलिंग कोड डिक्शनरी की मदद से अंतर्राष्ट्रीय डायलिंग कोड का हिसाब रखने वाला कोड लिखेंगे।

इस डिक्शनरी में की (डायलिंग कोड) के लिए एक पूर्णांक और वैल्यू (देश का नाम) के लिए एक स्ट्रिंग इस्तेमाल होती है।

आपके सामने 9 कार्य हैं, जो DialingCodes स्टैटिक क्लास से जुड़े हैं।

1. नई डिक्शनरी बनाइए

(स्टैटिक) मेथड DialingCodes.GetEmptyDictionary() लागू कीजिए, जो एक खाली डिक्शनरी लौटाता है।

DialingCodes.GetEmptyDictionary();
// => empty dictionary

2. पहले से भरी डिक्शनरी बनाइए

एक पहले से भरी डिक्शनरी मौजूद है, जिसमें ये 3 डायलिंग कोड शामिल हैं: "United States of America", जिसका कोड 1 है; "Brazil", जिसका कोड 55 है; और "India", जिसका कोड 91 है। (स्टैटिक) मेथड DialingCodes.GetExistingDictionary() लागू कीजिए, जो यह पहले से भरी डिक्शनरी लौटाए:

DialingCodes.GetExistingDictionary();
// => 1 => "United States of America", 55 => "Brazil", 91 => "India"

3. खाली डिक्शनरी में कोई देश जोड़िए

(स्टैटिक) मेथड DialingCodes.AddCountryToEmptyDictionary() लागू कीजिए, जो एक डिक्शनरी बनाता है और उसमें एक डायलिंग कोड और उससे जुड़ा देश का नाम जोड़ता है।

DialingCodes.AddCountryToEmptyDictionary(44, "United Kingdom");
// => 44 => "United Kingdom"

4. मौजूदा डिक्शनरी में कोई देश जोड़िए

(स्टैटिक) मेथड DialingCodes.AddCountryToExistingDictionary() लागू कीजिए, जो किसी गैर-खाली डिक्शनरी में एक डायलिंग कोड और उससे जुड़ा देश का नाम जोड़ता है।

DialingCodes.AddCountryToExistingDictionary(DialingCodes.GetExistingDictionary(),
  44, "United Kingdom");
// => 1 => "United States of America", 44 => "United Kingdom", 55 => "Brazil", 91 => "India"

5. डायलिंग कोड से मेल खाता देश का नाम निकालिए

(स्टैटिक) मेथड DialingCodes.GetCountryNameFromDictionary() लागू कीजिए, जो एक डायलिंग कोड लेता है और उससे जुड़ा देश का नाम लौटाता है। अगर डायलिंग कोड डिक्शनरी में मौजूद नहीं है, तो एक खाली स्ट्रिंग लौटाई जाती है।

DialingCodes.GetCountryNameFromDictionary(
  DialingCodes.GetExistingDictionary(), 55);
// => "Brazil"

DialingCodes.GetCountryNameFromDictionary(
  DialingCodes.GetExistingDictionary(), 999);
// => string.Empty

6. जाँचिए कि कोई देश डिक्शनरी में मौजूद है

(स्टैटिक) मेथड DialingCodes.CheckCodeExists() लागू कीजिए, जो यह जाँचता है कि कोई डायलिंग कोड डिक्शनरी में मौजूद है या नहीं।

DialingCodes.CheckCodeExists(DialingCodes.GetExistingDictionary(), 55);
// => true

7. देश का नाम बदलिए

(स्टैटिक) मेथड DialingCodes.UpdateDictionary() लागू कीजिए, जो एक डायलिंग कोड लेता है और डिक्शनरी में उससे जुड़े देश के नाम को उस देश के नाम से बदल देता है जो पैरामीटर के रूप में दिया गया है। अगर डायलिंग कोड डिक्शनरी में मौजूद नहीं है, तो डिक्शनरी वैसी ही रहती है।

DialingCodes.UpdateDictionary(
  DialingCodes.GetExistingDictionary(), 1, "Les États-Unis");
// => 1 => "Les États-Unis", 55 => "Brazil", 91 => "India"

DialingCodes.UpdateDictionary(
  DialingCodes.GetExistingDictionary(), 999, "Newlands");
// 1 => "United States of America", 55 => "Brazil", 91 => "India"

8. डिक्शनरी से कोई देश हटाइए

(स्टैटिक) मेथड DialingCodes.RemoveCountryFromDictionary() लागू कीजिए, जो एक डायलिंग कोड लेता है और डिक्शनरी से उससे जुड़ा रिकॉर्ड, यानी डायलिंग कोड + देश का नाम, हटा देता है।

DialingCodes.RemoveCountryFromDictionary(
  DialingCodes.GetExistingDictionary(), 91);
// => 1 => "United States of America", 55 => "Brazil"

9. सबसे लंबे नाम वाला देश खोजिए

(स्टैटिक) मेथड DialingCodes.FindLongestCountryName() लागू कीजिए, जो डिक्शनरी में संग्रहीत सबसे लंबे नाम वाले देश का नाम लौटाता है।

DialingCodes.FindLongestCountryName(
  DialingCodes.GetExistingDictionary());
// => "United States of America"
GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
C# Exercism

अंतरराष्ट्रीय कॉलिंग के पारखी शुरू करने के लिए तैयार हैं?

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