ट्रैक
/
MIPS Assembly
MIPS Assembly
/
अभ्यास
/
टिक-टैक-टो की स्थिति
टिक-टैक-टो की स्थिति

टिक-टैक-टो की स्थिति

मध्यम

निर्देश

इस अभ्यास में आपको एक ऐसा प्रोग्राम बनाना है जो बताता है कि टिक-टैक-टो के किसी खेल की स्थिति क्या है। (आप इस खेल को "noughts and crosses" या "Xs and Os" के नाम से भी जानते होंगे।)

यह खेल 3×3 के ग्रिड पर खेला जाता है। खिलाड़ी बारी-बारी से ग्रिड पर X और O रखते हैं। खेल तब खत्म होता है जब कोई एक खिलाड़ी एक ही पंक्ति, स्तंभ या ग्रिड के किसी विकर्ण पर तीन चिह्न लगाकर जीत जाए, या जब पूरा ग्रिड भर जाए।

इस अभ्यास में हम मान लेंगे कि खेल की शुरुआत X से होती है।

आपको यह पता लगाना है कि दिया गया खेल किस स्थिति में है।

खेल की तीन संभावित स्थितियाँ हैं:

  • खेल ongoing है।
  • खेल draw पर खत्म हुआ।
  • खेल win पर खत्म हुआ।

अगर दिया गया बोर्ड अमान्य है, तो एक उपयुक्त एरर फेंकिए।

अगर कोई बोर्ड इन शर्तों को पूरा करता है, तो वह अमान्य है:

  • बारी सही क्रम में लेने पर दिए गए बोर्ड तक पहुँचा ही नहीं जा सकता (याद रखिए कि शुरुआत X से होती है)।
  • खेल खत्म हो चुकने के बाद भी खेला गया है।

उदाहरण

चल रहा खेल

   |   |
 X |   |
___|___|___
   |   |
   | X | O
___|___|___
   |   |
 O | X |
   |   |

बराबरी

   |   |
 X | O | X
___|___|___
   |   |
 X | X | O
___|___|___
   |   |
 O | X | O
   |   |

जीत

   |   |
 X | X | X
___|___|___
   |   |
   | O | O
___|___|___
   |   |
   |   |
   |   |

अमान्य

बारी का गलत क्रम
   |   |
 O | O | X
___|___|___
   |   |
   |   |
___|___|___
   |   |
   |   |
   |   |
जीत के बाद भी खेलना जारी रखना
   |   |
 X | X | X
___|___|___
   |   |
 O | O | O
___|___|___
   |   |
   |   |
   |   |

बोर्ड का प्रारूप

बोर्ड को एक नल-टर्मिनेटेड स्ट्रिंग के रूप में दर्शाया जाता है, जिसमें हर पंक्ति के अंत में एक न्यूलाइन अक्षर होता है।

एक उदाहरण होगा "X \n XO\nOX \n"

रजिस्टर

रजिस्टर उपयोग टाइप विवरण
$a0 इनपुट एड्रेस नल-टर्मिनेटेड इनपुट स्ट्रिंग
$v0 आउटपुट पूर्णांक खेल की स्थिति (1 = ongoing, 2 = draw, 3 = win, -1 = error)
$t0-9 अस्थायी कोई भी अस्थायी भंडारण के लिए
GitHub के ज़रिए संपादित करें यह लिंक एक नई विंडो या टैब में खुलता है
MIPS Assembly Exercism

टिक-टैक-टो की स्थिति शुरू करने के लिए तैयार हैं?

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