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

জাভাস্ক্রিপ্টে সংখ্যা কে ক্যারেক্টারে ম্যাপ করা


ধরুন আমাদের কাছে সংখ্যা ১২১৪৫ আছে। আমাদের একটি ফাংশন লিখতে হবে যা সংখ্যার অঙ্কগুলোকে ইংরেজি অ্যালফাবেটের সাথে ম্যাপ করবে নিচের নিয়ম অনুযায়ী। অ্যালফাবেটগুলো ১-ভিত্তিক ইনডেক্স অনুযায়ী ম্যাপ হবে, যেমন 'a' ১-এর জন্য, 'b' ২-এর জন্য, 'c' ৩-এর জন্য ইত্যাদি।

একটি সংখ্যা ম্যাপ করার অনেক পথ থাকতে পারে। উপরের ১২১৪১৫ সংখ্যাটি নিই উদাহরণস্বরূপ,

এটি ম্যাপ করা যেতে পারে −

12145->1,2,1,4,5->a,b,a,d,e

এটিও হতে পারে −

12145->12,1,4,5->l,a,d,e

এটিও হতে পারে −

12145->12,14,5->l,n,e

এবং আরও, কিন্তু ১২১৪৫ কখনো ১,২,১,৪৫ হতে পারবে না কারণ ৪৫-এর জন্য অ্যালফাবেটে কোনো ম্যাপিং নেই। তাই আমাদের ফাংশনটি অ্যালফাবেট ম্যাপিং-র সব পারমুটেশন রিটার্ন করবে।

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

উদাহরণ

const num = 12145; const mapToAlphabets = num => {    const numStr = '' + num;    let res = [];    const shoveElements = (left, right) => {       if (!left.length) {          res.push(right.map(el => {             return (+el + 9).toString(36);          }).join(''));          return;       };       if(+left[0] > 0){          shoveElements(left.slice(1), right.concat(left[0]));       };       if(left.length >= 2 && +(left.slice(0, 2)) <= 26){          shoveElements(left.slice(2), right.concat(left.slice(0, 2)));       };    };    shoveElements(numStr, []);    return res; } console.log(mapToAlphabets(num));

আউটপুট

কনসোলে আউটপুট −

[ 'abade', 'abne', 'aude', 'lade', 'lne' ]

  1. জাভাস্ক্রিপ্ট Numbers উদাহরণ

  2. জাভাস্ক্রিপ্টে Map অবজেক্ট

  3. জাভাস্ক্রিপ্টে এস্কেপ ক্যারেক্টারস

  4. জাভাস্ক্রিপ্টে অ্যারেতে n সংখ্যক কনসিকিউটিভ অড নম্বর আছে কিনা যাচাই