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

জাভাস্ক্রিপ্টে বাইনারি যোগ করা রূপান্তর ছাড়া


সমস্যা

আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা দুটি বাইনারি স্ট্রিং str1 এবং str2 প্রথম ও দ্বিতীয় আর্গুমেন্ট হিসেবে নেবে।

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

উদাহরণস্বরূপ, যদি ইনপুট হয় –

ইনপুট

const str1 = '1101'; 
const str2 = '10111';

আউটপুট

const output = '100100';

উদাহরণ

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

const str1 = '1101'; 
const str2 = '10111'; 
const addBinary = (str1 = '', str2 = '') => { 
  str1 = str1.split('').reverse(); 
  str2 = str2.split('').reverse(); 
  let res = '', temp = 0; 
  while (str1.length || str2.length || temp) { 
    temp += (~~str1.shift()) + (~~str2.shift()); 
    let mod = temp % 2; 
    res = mod + res; 
    temp = temp > 1; 
  } 
  return (+res) ? res.replace(/^0+/, '') : '0'; 
}; 
console.log(addBinary(str1, str2));

আউটপুট

100100

  1. জাভাস্ক্রিপ্টে বাইনারি সার্চ ট্রি

  2. জাভাস্ক্রিপ্টে বাইনারি ট্রি

  3. জাভাস্ক্রিপ্টে অ্যারে থেকে সেটে কনভার্ট করা

  4. জাভাস্ক্রিপ্ট প্রোটোটাইপে মেথড যোগ করা