संग्रह पर keep और discard ऑपरेशन बनाइए।
आपको एक संग्रह और उसके एलिमेंट पर लागू होने वाला एक प्रेडिकेट दिया गया है। जिन एलिमेंट के लिए प्रेडिकेट सही है, keep उन्हें लेकर एक नया संग्रह लौटाता है, और जिन एलिमेंट के लिए प्रेडिकेट गलत है, discard उन्हें लेकर एक नया संग्रह लौटाता है।
उदाहरण के लिए, संख्याओं का यह संग्रह लीजिए:
और यह प्रेडिकेट:
तब आपका keep ऑपरेशन यह नतीजा देगा:
और आपका discard ऑपरेशन यह नतीजा देगा:
ध्यान दीजिए कि keep और discard दोनों को मिलाने पर सारे एलिमेंट मिल जाते हैं।
इन फंक्शनों के नाम keep और discard हो सकते हैं, या फिर आपकी भाषा में पहले से मौजूद फंक्शनों या कॉन्सेप्टों से टकराव से बचने के लिए इन्हें कोई और नाम देना पड़ सकता है।
आपकी स्टैंडर्ड लाइब्रेरी में जो filter/reject/जो भी आप उसे कहें वाली सुविधा दी गई है, उससे हाथ दूर रखिए! इसके बजाय इसे दूसरे बुनियादी टूल इस्तेमाल करके खुद हल कीजिए।
इस अभ्यास में मुख्य रूप से Swift के Array स्ट्रक्चर में मेथड जोड़ने पर ध्यान दिया गया है। ऐसा करने का सबसे आसान तरीका है एक्सटेंशन का इस्तेमाल करना।
extension Array {
// Write your code for the 'Strain' exercise in this file.
}
Array का डॉक्युमेंटेशन यहाँ मिल सकता है।
Exercism पर साइन अप कीजिए और Swift को 35 कॉन्सेप्ट116 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।