কম্পিউটার

পাইথনে একটি সংখ্যা অন্যটির পরিপূরক কিনা তা পরীক্ষা করুন


ধরুন আমাদের x এবং y দুটি সংখ্যা আছে। এই দুটি সংখ্যার একটি অন্যটির 1 এর পরিপূরক কিনা তা আমাদের পরীক্ষা করতে হবে। আমরা সবাই জানি বাইনারি সংখ্যার 1 এর পরিপূরকটি 0 থেকে 1 বা 1 থেকে 0 পর্যন্ত সমস্ত বিট ফ্লিপ করছে।

সুতরাং, যদি ইনপুটটি x =9, y =6 এর মত হয়, তাহলে আউটপুটটি True হবে কারণ বাইনারি উপস্থাপনাগুলি হল x =1001 এবং y =0110 যা একে অপরের পরিপূরক।

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

  • z =x XOR y
  • যখন z-এ সমস্ত বিট সেট করা থাকে তখন সত্যে ফিরে আসে, অন্যথায় মিথ্যা

উদাহরণ

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

def all_one(n):
   if n == 0:
      return False;
   if ((n + 1) & n) == 0:
      return True
   return False
def solve(x, y):
   return all_one(x ^ y)
x = 9
y = 6
print(solve(x, y))

ইনপুট

9, 6

আউটপুট

True

  1. পাইথনে একটি গাছ অন্য গাছের সাবট্রি কি না তা পরীক্ষা করার জন্য প্রোগ্রাম

  2. পাইথনে একটি তালিকা অন্যটির উপসেট কিনা তা পরীক্ষা করুন

  3. পাইথনে তালিকায় পরপর সংখ্যা রয়েছে কিনা তা পরীক্ষা করুন

  4. Python প্রোগ্রাম একটি পাসওয়ার্ডের বৈধতা পরীক্ষা করতে?