কম্পিউটার

জাভাস্ক্রিপ্টে নম্বর প্যালিনড্রোম তৈরির ধাপগুলি গণনা করা হচ্ছে


সমস্যা

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

আমাদের ফাংশন একটি প্যালিনড্রোম প্রাপ্ত করার জন্য প্রয়োজনীয় বিশেষ পদক্ষেপের সংখ্যা ফেরত দেওয়া উচিত। বিশেষ পদক্ষেপ হল:"অঙ্কগুলি বিপরীত করুন এবং আসল সংখ্যায় যোগ করুন"। যদি ফলিত সংখ্যাটি নোটা প্যালিনড্রোম হয়, তাহলে যোগফলের সাথে পদ্ধতিটি পুনরাবৃত্তি করুন যতক্ষণ না ফলিত সংখ্যাটি একটি প্যালিনড্রোম হয়৷

উদাহরণস্বরূপ, যদি ফাংশনে ইনপুট হয় −

ইনপুট

const num = 87;

আউটপুট

const output = 4;

আউটপুট ব্যাখ্যা

কারণ জড়িত পদক্ষেপগুলি হল −

87 + 78 = 165; 165 + 561 = 726; 726 + 627 = 1353; 1353 + 3531 = 4884

উদাহরণ

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

const num = 87;
const countSteps = (num) => {
   let res = 0;
   while (!isPalindrome(num)) {
   res++
   num += +('' + num).split``.reverse().join``
};
   return res;
}
const isPalindrome = num => {
   let i = 0
   let str = '' + num
   while (i++ <= str.length / 2) {
      if (str[i] !== str[str.length - 1 - i]) return false
   };
   return true
}
console.log(countSteps(num));

আউটপুট

4

  1. জাভাস্ক্রিপ্টে অ্যারে উপাদানগুলিকে সমান করতে ন্যূনতম পদক্ষেপগুলি সন্ধান করা

  2. জাভাস্ক্রিপ্ট ব্যবহার করে একটি সংখ্যার ভাজক গণনা

  3. জাভাস্ক্রিপ্টে পূর্ণ সংখ্যার মধ্যে nম প্যালিনড্রোম সংখ্যা খুঁজে বের করা

  4. জাভাস্ক্রিপ্টে n পর্যন্ত গণনা করার সময় 9s গণনা সংখ্যার সম্মুখীন হয়েছে