কম্পিউটার

একটি সংখ্যার সমস্ত বিট পাইথনে সেট করা আছে কিনা তা পরীক্ষা করুন


ধরুন আমাদের একটি সংখ্যা n আছে। প্রদত্ত সংখ্যা n এর জন্য সমস্ত বিট (1) সেট করা আছে কিনা তা আমাদের পরীক্ষা করতে হবে।

সুতরাং, যদি ইনপুটটি n =255 এর মত হয়, তাহলে আউটপুটটি True হবে কারণ 255 এর বাইনারি উপস্থাপনা হল 11111111।

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

  • যদি সংখ্যা 0 এর মত হয়, তাহলে
    • মিথ্যে ফেরত দিন
  • যখন সংখ্যা> 0, do
    • সংখ্যা যদি জোড় হয়, তাহলে
      • মিথ্যে ফেরত দিন
    • সংখ্যা :=(সংখ্যা / 2) এর ভাগফল
  • সত্য ফেরান

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

উদাহরণ

def solve(number):
   if number == 0:
      return False
   while number > 0:
      if (number & 1) == 0:
         return False
      number = number >> 1
   return True
n = 255
print(solve(n))

ইনপুট

255

আউটপুট

True

  1. Python List কম্প্রিহেনশন ব্যবহার করে সেট বিট গণনা করুন

  2. একটি সংখ্যার সমস্ত সংখ্যা এটিকে ভাগ করে কিনা তা পরীক্ষা করার জন্য পাইথন প্রোগ্রাম

  3. পাইথন প্রোগ্রাম 1 থেকে n পর্যন্ত সমস্ত সংখ্যায় মোট সেট বিট গণনা করে।

  4. একটি বাইনারি সংখ্যায় K ধারাবাহিক 1 আছে কিনা তা পরীক্ষা করার জন্য পাইথন প্রোগ্রাম?