ट्रैक
/
Pharo
Pharo
/
अभ्यास
/
विपर्यय
विपर्यय

विपर्यय

आसान

परिचय

एक गैराज सेल में आपको बहुत सस्ते दाम पर एक सुंदर पुराना टाइपराइटर मिलता है! उत्साह में भरकर आप घर दौड़ते हैं, कागज़ का एक पन्ना डालते हैं और टाइप करने लगते हैं। लेकिन जब आप आउटपुट देखते हैं, तो आपका उत्साह ठंडा पड़ जाता है: सभी शब्द गड़बड़ निकलते हैं! जैसे, यह "post" की जगह "stop" छापता है और "stale" की जगह "least"। ध्यान से आप फिर कोशिश करते हैं, लेकिन अब यह "spot" और "slate" छापता है।

कुछ प्रयोग करने के बाद आप पाते हैं कि हर अक्षर छपने से पहले एक अनियमित देरी होती है, जिससे क्रम बिगड़ जाता है। अब आप समझ गए कि उन्होंने इसे इतने कम पैसों में क्यों बेचा!

आपको एहसास होता है कि इसी खूबी से आप एनाग्राम बना सकते हैं, यानी ऐसे शब्द जो किसी दूसरे शब्द के अक्षरों को नए क्रम में रखकर बनते हैं। अपनी खोज से खुश होकर आप दिन का बाकी समय सैकड़ों एनाग्राम बनाने में बिताते हैं।

निर्देश

आपको एक लक्ष्य शब्द और उम्मीदवार शब्दों का एक समूह दिया जाएगा। इनमें से वे शब्द चुनने हैं जो लक्ष्य के एनाग्राम हैं।

एनाग्राम एक नया शब्द है जो अक्षरों को नए क्रम में रखकर बनाया जाता है। जैसे, "owns", "snow" का एनाग्राम है। कोई शब्द अपना ही एनाग्राम नहीं होता। जैसे, "stop", "stop" का एनाग्राम नहीं है।

लक्ष्य और उम्मीदवार एक या अधिक ASCII अक्षरों से बने शब्द होते हैं (A-Z और a-z)। छोटे और बड़े अक्षर एक जैसे माने जाते हैं। जैसे, "PoTS", "sTOp" का एनाग्राम है, लेकिन StoP, sTOp का एनाग्राम नहीं है। एनाग्राम समूह उम्मीदवार समूह का वह उपसमूह है जिसके शब्द लक्ष्य के एनाग्राम हैं (किसी भी क्रम में)। एनाग्राम समूह के शब्दों में छोटे और बड़े अक्षरों का वही रूप होना चाहिए जो उम्मीदवार समूह में है।

मान लीजिए लक्ष्य "stone" है और उम्मीदवार "stone", "tones", "banana", "tons", "notes", "Seton" हैं, तो एनाग्राम समूह "tones", "notes", "Seton" है।

कार्यान्वयन

आपको एनाग्राम उसी क्रम में लौटाने हैं जिस क्रम में वे उम्मीदवार शब्दों की सूची में दिए गए हैं।

आइसोग्राम की तरह यहाँ भी यह देख लेना अच्छा रहता है कि सिस्टम में पहले से कौन-कौन से डेटा टाइप उपलब्ध हैं। यह भी याद रखिए कि टेस्ट एक-एक करके पूरे कीजिए और हल थोड़ा-थोड़ा करके बनाइए। डीबगर भी आपका दोस्त बन सकता है। आप किसी भी एक्सप्रेशन या वेरिएबल की वैल्यू देख सकते हैं, जिससे आपको यह बेहतर ढंग से देखने और समझने में मदद मिलती है कि आपका कोड कैसे काम करता है।

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

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

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