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

সংখ্যার রাইটমোস্ট সেট বিট ক্লিয়ার করার পাইথন প্রোগ্রাম


একটি সংখ্যার সবচেয়ে ডানের সেট বিট (১) ক্লিয়ার করতে n & (n-1) বিটওয়াইজ অপারেশন ব্যবহার করা হয়। এটি বাইট ম্যানিপুলেশনের একটি ক্লাসিক ট্রিক।

উদাহরণ

def clear_rightmost_set_bit(n):
    return n & (n - 1)

num = 6  # বাইনারি: 110
print("মূল সংখ্যা:", num)
print("রাইটমোস্ট সেট বিট ক্লিয়ার করার পর:", clear_rightmost_set_bit(num))

আউটপুট

মূল সংখ্যা: 6
রাইটমোস্ট সেট বিট ক্লিয়ার করার পর: 4

ব্যাখ্যা

  • clear_rightmost_set_bit ফাংশন ইন্টিজার প্যারামিটার নেয়।

  • n & (n-1) এক্সপ্রেশনটি n-এর লিস্ট সিগনিফিক্যান্ট সেট বিটকে ০ করে দেয়।

  • উদাহরণ: 6 (110) → 6-1=5 (101) → 110 & 101 = 100 (4)।

  • এই টেকনিক সেট বিট গণনা, পাওয়ার অফ টু চেক ইত্যাদিতে কাজে আসে।


  1. পাইথন প্রোগ্রাম লিস্টে সবচেয়ে ছোট সংখ্যা বের করা

  2. পাইথন প্রোগ্রাম লিস্টে সবচেয়ে বড় সংখ্যা বের করা

  3. পাইথন প্রোগ্রাম: দেওয়া সংখ্যা পর্যন্ত ৩ এবং ৫ দ্বারা বিভাজ্য সব সংখ্যা প্রিন্ট করা

  4. পাইথন প্রোগ্রাম: সেট ব্যবহার করে স্ট্রিং-এ স্বরবর্ণ গণনা (Duplicate)