কম্পিউটার

জাভাস্ক্রিপ্টে বিটওয়াইজ অপারেশন ব্যবহার করে 2-এর শক্তি পরীক্ষা করা হচ্ছে


আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা একটি সংখ্যা নেয় এবং এটি দুইটির শক্তি কিনা তা নির্ধারণ করে।

উদাহরণস্বরূপ -

f(23) = false
f(16) = true
f(1) = true
f(1024) = true

পন্থা -

বাইনারি আকারে দুটির শক্তির সর্বদা মাত্র একটি বিট থাকে। এই মত -

1: 0001
2: 0010
4: 0100
8: 1000

অতএব, সংখ্যাটি শূন্যের চেয়ে বড় কিনা তা পরীক্ষা করার পরে, আমরা একটি বিটওয়াইজ হ্যাক ব্যবহার করে পরীক্ষা করতে পারি যে এক এবং শুধুমাত্র একটি বিট সেট করা আছে। একই নিচে দেখানো হয়েছে -

num & (num - 1)

উদাহরণ

নিম্নলিখিত কোড -

const num1 = 256;
const num2 = 1024;
const isPowerOfTwo = (num = 1) => {
   if (num < 1) {
      return false;
   };
   return (num & (num - 1)) === 0;
};
console.log(isPowerOfTwo(num1));
console.log(isPowerOfTwo(num2));
console.log(isPowerOfTwo(1));
console.log(isPowerOfTwo(23));

আউটপুট

নিম্নোক্ত কনসোলে আউটপুট -

true
true
true
false

  1. জাভাস্ক্রিপ্ট ব্যবহার করে একটি সারিতে উপাদান যোগ করুন

  2. ফায়ারবাগ ব্যবহার করে জাভাস্ক্রিপ্ট ডিবাগ করা

  3. জাভাস্ক্রিপ্ট আমদানিতে '{ }' ব্যবহার করছেন?

  4. বিটওয়াইজ অপারেশন ব্যবহার করে 2 দ্বারা যোগ এবং গুণ করার জন্য সি প্রোগ্রাম।