مسیرها
/
TypeScript
TypeScript
/
تمرین‌ها
/
حمله‌ی وزیر
حمله‌ی وزیر

حمله‌ی وزیر

دشوار

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

با توجه به موقعیت دو وزیر روی یک تخته‌ی شطرنج، مشخص کنید که آیا آن‌ها طوری قرار گرفته‌اند که بتوانند به یکدیگر حمله کنند یا نه.

در بازی شطرنج، وزیر می‌تواند به مهره‌هایی حمله کند که در همان سطر، ستون یا قطر قرار دارند.

یک تخته‌ی شطرنج را می‌توان با یک آرایه‌ی ۸ در ۸ نمایش داد.

پس اگر به شما بگویند وزیر سفید در c5 است (با اندیس صفر در ستون ۲ و سطر ۳) و وزیر سیاه در f2 (با اندیس صفر در ستون ۵ و سطر ۶)، آن‌وقت می‌دانید که چیدمان به این شکل است:

یک تخته‌ی شطرنج با دو وزیر. پیکان‌هایی که از وزیر در c5 بیرون می‌آیند، جهت‌های ممکن حمله در طول ستون، ردیف و قطر را نشان می‌دهند.

شما همچنین می‌توانید پاسخ دهید که آیا وزیرها می‌توانند به یکدیگر حمله کنند یا نه. در این حالت، پاسخ بله است؛ آن‌ها می‌توانند، چون هر دو مهره روی یک قطر مشترک قرار دارند.

اعتبار

تصویر تخته‌ی شطرنج را habere-et-dispertire با استفاده از LaTeX و بسته‌ی chessboard ساخته‌ی Ulrike Fischer ساخته است.

پیاده‌سازی

ملکه باید در یک موقعیت معتبر روی صفحه قرار بگیرد. دو ملکه نمی‌توانند موقعیت یکسانی داشته باشند.

اگر موقعیتی داده نشده باشد، ملکه‌ها در موقعیت‌های شروع پیش‌فرض قرار دارند. یعنی ردیف پایین (۱) برای ملکه‌ی سفید و ردیف بالا (۸) برای ملکه‌ی سیاه. هر دو ملکه در ستون چهارم (d) شروع می‌کنند.

  a b c d e f g h
8 _ _ _ B _ _ _ _ 8
7 _ _ _ _ _ _ _ _ 7
6 _ _ _ _ _ _ _ _ 6
5 _ _ _ _ _ _ _ _ 5
4 _ _ _ _ _ _ _ _ 4
3 _ _ _ _ _ _ _ _ 3
2 _ _ _ _ _ _ _ _ 2
1 _ _ _ W _ _ _ _ 1
  a b c d e f g h
ویرایش از طریق GitHub این لینک در پنجره یا زبانه‌ی جدیدی باز می‌شود
TypeScript Exercism

آماده‌اید حمله‌ی وزیر را شروع کنید؟

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