مسیرها
/
CoffeeScript
CoffeeScript
/
تمرین‌ها
/
وضعیت بازی دوز
وضعیت بازی دوز

وضعیت بازی دوز

آسان

دستورالعمل‌ها

در این تمرین، برنامه‌ای را پیاده‌سازی می‌کنید که وضعیت یک بازی tic-tac-toe را مشخص می‌کند. (شاید این بازی را با نام‌های «noughts and crosses» یا «Xs and Os» هم بشناسید.)

این بازی روی یک شبکه‌ی ۳×۳ انجام می‌شود. بازیکنان به نوبت 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
___|___|___
   |   |
   |   |
   |   |
ویرایش از طریق GitHub این لینک در پنجره یا زبانه‌ی جدیدی باز می‌شود
CoffeeScript Exercism

آماده‌اید وضعیت بازی دوز را شروع کنید؟

در Exercism ثبت‌نام کنید تا CoffeeScript را همراه با 97 تمرین و مربی‌گری انسانی واقعی یاد بگیرید و در آن استاد شوید، همه‌ی این‌ها رایگان.