ট্র্যাক
/
Haskell
Haskell
/
অনুশীলনী
/
রানির আক্রমণ
রানির আক্রমণ

রানির আক্রমণ

মধ্যম

নির্দেশনা

দাবা বোর্ডে দুইটি রানির অবস্থান দেওয়া থাকলে, তারা একে অপরকে আক্রমণ করার মতো অবস্থানে আছে কি না তা নির্ণয় করুন।

দাবার খেলায় একটি রানি একই সারি, কলাম বা কর্ণে থাকা গুটি আক্রমণ করতে পারে।

দাবা বোর্ডকে ৮ × ৮ অ্যারে হিসেবে প্রকাশ করা যায়।

তাই যদি আপনাকে বলা হয় যে সাদা রানির অবস্থান c5 (শূন্য-সূচক কলাম ২, সারি ৩) এবং কালো রানির অবস্থান f2 (শূন্য-সূচক কলাম ৫, সারি ৬), তাহলে আপনি বুঝবেন বিন্যাসটি এরকম:

দুইটি রানিসহ একটি দাবা বোর্ড। c5-তে থাকা রানি থেকে বেরোনো তিরগুলো কলাম, সারি এবং কর্ণ বরাবর সম্ভাব্য আক্রমণের দিক নির্দেশ করে।

আপনি এও উত্তর দিতে পারবেন যে রানিরা একে অপরকে আক্রমণ করতে পারে কি না। এ ক্ষেত্রে উত্তরটি হবে হ্যাঁ, তারা পারে, কারণ দুইটি গুটি একই কর্ণে অবস্থান করে।

স্বীকৃতি

দাবা বোর্ডের ছবিটি তৈরি করেছেন habere-et-dispertire, LaTeX এবং Ulrike Fischer-এর chessboard package ব্যবহার করে।

ইঙ্গিত

এই অনুশীলনীটি সম্পন্ন করতে আপনাকে নিচের ফাংশনগুলো ইমপ্লিমেন্ট করতে হবে:

  • boardString
  • canAttack

টাইপ সিগনেচারগুলো আগেই দেওয়া আছে, কিন্তু ফাংশনগুলো ডিফাইন করা আপনার কাজ।

অবস্থানগুলো দুই-টাপল হিসেবে নির্দিষ্ট করা হয়:

  • প্রথম এলিমেন্টটি হলো সারি (দাবার পরিভাষায় র‍্যাঙ্ক)।
  • দ্বিতীয় এলিমেন্টটি হলো কলাম (দাবার পরিভাষায় ফাইল)।
  • (0, 0) হলো বোর্ডের উপরের বাম কোণা, (0, 7) হলো উপরের ডান কোণা,
  • (7, 0) হলো নিচের বাম কোণা, আর (7, 7) হলো নিচের ডান কোণা।
GitHub-এর মাধ্যমে সম্পাদনা করুন লিংকটি একটি নতুন উইন্ডো বা ট্যাবে খোলে
Haskell Exercism

রানির আক্রমণ শুরু করতে প্রস্তুত?

Exercism-এ সাইন আপ করুন, Haskell ট্র্যাকের 107টি অনুশীলনী আর সত্যিকারের মানুষের মেন্টরিং দিয়ে শিখুন ও দক্ষ হয়ে উঠুন, সম্পূর্ণ বিনামূল্যে।