কম্পিউটার

পাইথনের চেসবোর্ডে একটি প্রদত্ত কোষে রানী আক্রমণ করতে পারে কিনা তা পরীক্ষা করুন


ধরুন আমাদের একটি দাবাবোর্ডে রানী এবং প্রতিপক্ষের জন্য দুটি স্থানাঙ্ক রয়েছে। এই পয়েন্টগুলি যথাক্রমে Q এবং O। রানী প্রতিপক্ষকে আক্রমণ করতে পারে কি না, তা খতিয়ে দেখতে হবে। আমরা জানি যে রানী একই সারি, একই কলাম এবং তির্যকভাবে আক্রমণ করতে পারে।

সুতরাং, যদি ইনপুটটি Q =(1, 1) O =(4, 4) এর মত হয়, তাহলে আউটপুটটি True হবে কারণ Q (4, 4) তির্যকভাবে যেতে পারে।

পাইথনের চেসবোর্ডে একটি প্রদত্ত কোষে রানী আক্রমণ করতে পারে কিনা তা পরীক্ষা করুন

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • যদি Q-এর x O-এর x এর সমান হয়, তাহলে
    • সত্য ফেরান
  • যদি Q-এর y এবং O-এর y হয়, তাহলে
    • সত্য ফেরান
  • যদি | Q এর x - O এর x | O| এর Q - y এর |y এর মত, তারপর
    • সত্য ফেরান
  • মিথ্যে ফেরত দিন

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

উদাহরণ

def solve(Q, O):
   if Q[0] == O[0]:
      return True
   if Q[1] == O[1]:
      return True
   if abs(Q[0] - O[0]) == abs(Q[1] - O[1]):
      return True
   return False
Q = (1, 1)
O = (4, 4)
print(solve(Q, O))

ইনপুট

(1, 1), (4, 4)

আউটপুট

True

  1. পাইথন - একটি প্রদত্ত স্ট্রিং বাইনারি স্ট্রিং কিনা তা পরীক্ষা করুন

  2. পাইথনে তালিকার স্ট্রিং উপাদানগুলিকে সংযুক্ত করে প্রদত্ত স্ট্রিং তৈরি করা যায় কিনা তা পরীক্ষা করুন

  3. পাইথনে প্রদত্ত শ্রেণিতে ক্লাস অ্যাট্রিবিউট সংজ্ঞায়িত বা উদ্ভূত হয়েছে কিনা তা আমি কীভাবে পরীক্ষা করতে পারি?

  4. A পাইথনে B এর সুপারক্লাস কিনা আমি কিভাবে পরীক্ষা করতে পারি?