কম্পিউটার

পাইথনে K-th বিট সেট করা আছে কি না তা পরীক্ষা করুন


ধরুন আমাদের একটি সংখ্যা n এবং আরেকটি মান k আছে। আমাদের পরীক্ষা করতে হবে n-এ kth বিট (1) সেট করা আছে কি না। k-এর মান ডান দিক থেকে বিবেচনা করা হয়।

সুতরাং, যদি ইনপুটটি n =23, k =3 এর মত হয়, তাহলে আউটপুটটি True হবে যেহেতু 23-এর বাইনারি ফর্ম হল 10111 তাই তৃতীয় শেষ বিট হল 1 (সেট)।

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

  • temp :=n বিট (k - 1) বার ডানদিকে সরানোর পরে
  • যদি temp AND 1 হয় 1, তাহলে
    • সত্য ফেরান
  • মিথ্যে ফেরত দিন

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

উদাহরণ কোড

def solve(n,k):
   temp = n >> (k - 1)
   if temp & 1:
      return True
   return False

n = 23
k = 3
print(solve(n, k))

ইনপুট

23, 3

আউটপুট

True

  1. পাইথনে N একটি ডিহেড্রাল প্রাইম নম্বর কিনা তা পরীক্ষা করুন

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

  3. প্রদত্ত নম্বরটি পাইথনে নার্সিসিস্টিক নম্বর কিনা তা পরীক্ষা করার জন্য প্রোগ্রাম

  4. প্রদত্ত গ্রাফটি পাইথনে দ্বিপক্ষীয় কি না তা পরীক্ষা করার জন্য প্রোগ্রাম