ऐरे Elixir भाषा में पहले से मौजूद हैं। इन्हें एक बुनियादी टाइप माना जाता है, और इन्हें चौकोर ब्रैकेट से दर्शाया जाता है। ऐरे खाली हो सकते हैं, या किसी भी टाइप की कितनी भी चीज़ें अपने अंदर रख सकते हैं। उदाहरण के लिए:
empty_list = []
one_item_list = [1]
two_item_list = [1, 2]
multiple_type_list = [1, :pi, 3.14, "four"]
Elixir ऐरे को लिंक्ड लिस्ट की तरह लागू करता है, जिसमें हर नोड दो वैल्यू संग्रहीत करता है: पहली चीज़, और बाकी सारी चीज़ों वाला एक और ऐरे। ऐरे की पहली चीज़ को हेड कहा जाता है, और बाकी बची चीज़ों वाले ऐरे को टेल कहा जाता है। आप कोड में यह नोटेशन इस्तेमाल कर सकते हैं:
# [1] represented in [head | tail] notation
[1 | []]
# [1, 2, 3] represented in [head | tail] notation
[1 | [2 | [3 | []]]]
आप [head | tail] नोटेशन से ऐरे के शुरू में एलिमेंट जोड़ सकते हैं:
# Suppose
list = [2, 1]
[3, 2, 1] == [3 | list]
# => true
ऐरे के साथ काम करने के लिए Kernel मॉड्यूल में कई फंक्शन हैं, और इसके अलावा पूरा List मॉड्यूल भी है।
# Check if 1 is a member of the list
1 in [1, 2, 3, 4]
# => true
इस अभ्यास में आपको प्रोग्रामिंग भाषाओं के ऐरे पर काम करने वाले कुछ फंक्शन बनाने हैं।
new/0 फंक्शन बनाइए जो कोई आर्गुमेंट नहीं लेता और एक खाली ऐरे लौटाता है।
LanguageList.new()
# => []
add/2 फंक्शन बनाइए जो 2 आर्गुमेंट लेता है (एक भाषाओं का ऐरे और भाषा का स्ट्रिंग लिटरल)। इसे दिए गए ऐरे के सबसे आगे नई भाषा जोड़कर बनने वाला ऐरे लौटाना चाहिए।
language_list = LanguageList.new()
# => []
language_list = LanguageList.add(language_list, "Clojure")
# => ["Clojure"]
language_list = LanguageList.add(language_list, "Haskell")
# => ["Haskell", "Clojure"]
remove/1 फंक्शन बनाइए जो 1 आर्गुमेंट (भाषाओं का ऐरे) लेता है। इसे पहले एलिमेंट के बिना वाला ऐरे लौटाना चाहिए। मान लीजिए कि ऐरे में हमेशा कम से कम एक एलिमेंट रहेगा।
language_list = LanguageList.new()
# => []
language_list = LanguageList.add(language_list, "Clojure")
# => ["Clojure"]
language_list = LanguageList.add(language_list, "Haskell")
# => ["Haskell", "Clojure"]
language_list = LanguageList.remove(language_list)
# => ["Clojure"]
first/1 फंक्शन बनाइए जो 1 आर्गुमेंट (भाषाओं का ऐरे) लेता है। इसे ऐरे की पहली भाषा लौटानी चाहिए। मान लीजिए कि ऐरे में हमेशा कम से कम एक एलिमेंट रहेगा।
language_list = LanguageList.new()
# => []
language_list = LanguageList.add(language_list, "Elm")
# => ["Elm"]
language_list = LanguageList.add(language_list, "Prolog")
# => ["Prolog", "Elm"]
LanguageList.first(language_list)
# => "Prolog"
count/1 फंक्शन बनाइए जो 1 आर्गुमेंट (भाषाओं का ऐरे) लेता है। इसे ऐरे में मौजूद भाषाओं की संख्या लौटानी चाहिए।
language_list = LanguageList.new()
# => []
language_list = LanguageList.add(language_list, "Elm")
# => ["Elm"]
language_list = LanguageList.add(language_list, "Prolog")
# => ["Prolog", "Elm"]
LanguageList.count(language_list)
# => 2
functional_list?/1 फंक्शन बनाइए जो 1 आर्गुमेंट (भाषाओं का ऐरे) लेता है। इसे एक बूलियन वैल्यू लौटानी चाहिए। अगर "Elixir" ऐरे की भाषाओं में से एक है, तो इसे सही लौटाना चाहिए।
language_list = LanguageList.new()
# => []
language_list = LanguageList.add(language_list, "Elixir")
# => ["Elixir"]
LanguageList.functional_list?(language_list)
# => true
Exercism पर साइन अप कीजिए और Elixir को 58 कॉन्सेप्ट168 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।