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

JavaScript-এ বাইনারি নম্বরের অ্যারেকে করেসপন্ডিং ইন্টিজারে রূপান্তর করা


মান লিজিয়ে, আমাদের কাছে একটি নম্বরের অ্যারে আছে যেটিতে ০ এবং ১ রয়েছে:

const arr = [0, 1, 0, 1];

আমাদের একটি অ্যারে ফাংশন লিখতে হবে, যেনাম toBinary(), যা সেটি যেটির সাথে ব্যবহার করা হয়েছে তার করেসপন্ডিং বাইনারি রিটার্ন করবে।

উদাহরণস্বরূপ - যদি অ্যারেটি হয়:

const arr = [1, 0, 1, 1];

তবে আউটপুট হবে ১১ কারণ বাইনারি ১০১১-এর ডেসিমেল রিপ্রেজেন্টেশন ১১।

তাহলে, এই ফাংশনের কোড লিখি।

পদ্ধতি ১: লাইব্রেরি মেথড ব্যবহার করে

JavaScript-এ একটি মেথড রয়েছে parseInt(), যা দুটি আর্গুমেন্ট নেয় - প্রথমটি একটি স্ট্রিং এবং দ্বিতীয়টি একটি নম্বর যেটি একটি নির্দিষ্ট বেস রিপ্রেজেন্ট করে, যেন ১০ ডেসিমেল বেসের জন্য, ২ বাইনারির জন্য। এই ফাংশন স্ট্রিং আর্গুমেন্টটি পার্স করে এবং নির্দিষ্ট রেডিক্স (বেস) এর ইন্টিজার রিটার্ন করে।

আমাদের কেসে, বাইনারি অ্যারেকে ডেসিমেলে রূপান্তর করতে আমরা parseInt() ফাংশন هكذا ব্যবহার করতে পারি:

const arr = [1, 0, 1, 1]; const parseArray = arr => {    const binaryString = arr.join("");    return parseInt(binaryString, 2); }; console.log(parseArray(arr));

পদ্ধতি ২: অ্যারে রিডিউস করে

এই পদ্ধতিতে আমরা বাইনারি অ্যারেতে ইটারেট করব এবং করেসপন্ডিং বাইনারি নম্বরগুলো বেস করে একটি ডেসিমেল নির্মাণ করব। আমরা লেফট শিফট অপারেটর (<<) ব্যবহার করব একিউমুলেটেড ভ্যালুকে এক বিট বামে শিফট করার জন্য প্রতিবার এবং রিটার্ন করব শিফটেড একিউমুলেটেড ভ্যালু এবং বর্তমান ভ্যালুর বিটওয়াইজ OR (|)।

বিটওয়াইজ অপারেটর ব্যবহার করে কোডটি:

উদাহরণ

const arr = [1, 0, 1, 1]; const parseArray = arr => {    return arr.reduce((acc, val) => {       return (acc << 1) | val;    }); }; console.log(parseArray(arr));

আউটপুট

কনসোলে আউটপুট হবে:

11

  1. জাভাস্ক্রিপ্টে অ্যারে খালি করার উপায়

  2. জাভাস্ক্রিপ্ট বেসিক অ্যারে মেথড: push, pop, shift, unshift, splice

  3. জাভাস্ক্রিপ্ট দিয়ে অ্যারে JSON-এ রূপান্তর করা

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