কম্পিউটার টিউটোরিয়াল

জাভাস্ক্রিপ্টে ডেসিমেল নম্বরের এডজাসেন্ট বাইনারি বিট সোয়াপ করা

সমস্যা

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

ফাংশনটি নম্বরের বাইনারি সমতুল্যে ইটারেট করে এর এডজাসেন্ট বিটগুলো সোয়াপ করবে একটি নতুন বাইনারি তৈরি করতে। এবং অবশেষে নতুন বাইনারির ডেসিমেল সমতুল্য রিটার্ন করবে।

উদাহরণ

নিচে কোড দেওয়া হলো:

const num = 13; 
const swapBits = (num) => { 
   let arr = num.toString(2).split(''); 
   if(arr.length % 2){ 
      arr.unshift(0); 
   } 
   for(let i = 0; i < arr.length - 1; i = i + 2) { 
      [arr[i], arr[i + 1]] = [arr[i + 1], arr[i]]; 
   } 
   return +('0b' + arr.join('')); 
} 
console.log(swapBits(num));

আউটপুট

14
  1. জাভাস্ক্রিপ্টে বাইনারি স্ট্রিংয়ে ন্যূনতম ফ্লিপ নির্ণয়

  2. জাভাস্ক্রিপ্টে অ্যারেতে ফিবোনাচি সিকোয়েন্স খুঁজে বের করা

  3. জাভাস্ক্রিপ্টে অ্যারেতে মাউন্টেন সাবঅ্যারের সর্বোচ্চ দৈর্ঘ্য

  4. C#-এ বাইনারি থেকে ডেসিমেল রূপান্তর