Minesweeper एक लोकप्रिय गेम है। इसमें खिलाड़ी को संख्यात्मक संकेतों की मदद से बम ढूँढने होते हैं। ये संकेत बताते हैं कि किसी खाने के ठीक आसपास (आड़े, खड़े या तिरछे) कितने बम हैं।
आपको एक तैयार माइनस्वीपर बोर्ड के खाली खानों में माइनों की संख्या भरनी है।
बोर्ड एक आयत होता है, जो ऐसे खानों से बना है जो या तो खाली (' ') होते हैं या माइन ('*')।
हर खाली खाने के लिए यह गिनिए कि उसके आसपास आड़ी, खड़ी और तिरछी दिशाओं में कितने माइन हैं। अगर खाली खाने के आसपास कोई माइन नहीं है, तो उसे खाली ही छोड़ दीजिए। वरना उसकी जगह उसके आसपास के माइनों की संख्या लिख दीजिए।
उदाहरण के लिए, आपको 5 x 4 का ऐसा बोर्ड मिल सकता है (यहाँ खाली जगहों को स्क्रीन पर दिखाने के लिए '·' अक्षर से दर्शाया गया है):
·*·*·
··*··
··*··
·····
आपके कोड को इसे इस तरह बदलना चाहिए:
1*3*1
13*31
·2*2·
·111·
x,y वाले स्थानों को अक्सर एक पॉइंट के रूप में दर्शाया जाता है। इससे कुछ उपयोगी पॉइंट फंक्शन मिलते हैं, जो इस काम में मदद कर सकते हैं। या फिर, इन स्थानों को 2D ऐरे के रूप में दर्शाना भी उपयोगी हो सकता है। किसी भी तरह से, कुछ विवरणात्मक एक्सटेंशन मेथड बनाने से आपका हल कहीं ज़्यादा पढ़ने योग्य और सुंदर बन सकता है।
Exercism पर साइन अप कीजिए और Pharo को 50 अभ्यास तथा असली इंसानों से मिलने वाली मेंटरिंग के साथ सीखिए और उसमें महारत हासिल कीजिए, वह भी बिल्कुल मुफ्त।
हम नेस्टेड for लूप, बाउंड जाँच आसान बनाने के लिए min/max का चतुर उपयोग, फंक्शनल पाइपलाइन और द्वि-आयामी मैट्रिक्स देखेंगे।