কম্পিউটার টিউটোরিয়াল

পাইথনে দুটি সংখ্যার মধ্যে একটিটি অন্যটির ১-এর কমপ্লিমেন্ট কিনা তা যাচাই করা

মান লিজিয়ে আমাদের দুটি সংখ্যা x এবং y আছে। আমাদের যাচাই করতে হবে এই দুটি সংখ্যার মধ্যে কোন একটি অন্যটির ১-এর কমপ্লিমেন্ট (1's complement) কিনা। আমরা সবাই জানি একটি বাইনারি সংখ্যার ১-এর কমপ্লিমেন্ট হল সকল বিট ০ থেকে ১ বা ১ থেকে ০-এ ফ্লিপ করা।

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

সমাধানের ধাপসমূহ

  • z = x XOR y
  • যদি z-এর সব বিট সেট থাকে তবে true রিটার্ন করুন, অন্যথায় false

উদাহরণ

বेहतर বোঝার জন্য নিচের বাস্তবায়নটি দেখুন:

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. পাইথনে লিস্টে কনsekutিভ নম্বর আছে কিনা যাচাই করুন

  4. পাইথনে পাসওয়ার্ডের বৈধতা যাচাই করার প্রোগ্রাম