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