ধরুন আমাদের দুটি সংখ্যা x এবং n আছে। আমাদের পাটিগণিত অপারেটর ব্যবহার না করে x 2^n দ্বারা বিভাজ্য কিনা তা পরীক্ষা করতে হবে।
সুতরাং, যদি ইনপুটটি x =32 n =5 এর মত হয়, তাহলে আউটপুটটি 32 =2^5 হিসাবে True হবে।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- যদি x AND (2^n - 1) 0 হয়, তাহলে
- সত্য ফেরান
- মিথ্যে ফেরত দিন
উদাহরণ
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
def solve (x, n): if (x & ((1 << n) - 1)) == 0: return True return False x = 32 n = 5 print(solve(x, n))
ইনপুট
32, 5
আউটপুট
True