কম্পিউটার

জাভাস্ক্রিপ্টে তাদের অঙ্কের যোগফলের উপর ভিত্তি করে সংখ্যা বাছাই করা


সমস্যা

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

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

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

ইনপুট

const arr = [5, 34, 1, 13, 76, 8, 78, 101, 57, 565];

আউটপুট

const output = [565, 78, 76, 57, 8, 34, 5, 13, 101, 1];

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

কারণ 565-এর সর্বোচ্চ অঙ্কের যোগফল 16, তারপরে 78 এবং 76 এবং 101 এবং 1-এর সর্বনিম্ন অঙ্কের যোগফল যথাক্রমে 2 এবং 1 রয়েছে

উদাহরণ

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

const arr = [5, 34, 1, 13, 76, 8, 78, 101, 57, 565];
const addDigits = (num, sum = 0) => {
   if(num){
      return addDigits(Math.floor(num / 10), sum + (num % 10));
   };
   return sum;
};
const sortByDigitSum = (arr = []) => {
   arr.sort((a, b) => {
      return addDigits(b) - addDigits(a);
   });
   return arr;
};
sortByDigitSum(arr);
console.log(arr);

আউটপুট

[ 565, 78, 76, 57, 8, 34, 5, 13, 101, 1 ]

  1. সুপার কুৎসিত সংখ্যা জাভাস্ক্রিপ্ট

  2. জাভাস্ক্রিপ্টে তাদের আসল ক্রমে একটি অ্যারে থেকে n ক্ষুদ্রতম সংখ্যা পুনরুদ্ধার করা হচ্ছে

  3. জাভাস্ক্রিপ্টে সমষ্টির ভারসাম্য রাখতে অ্যারে সূচক

  4. জাভাস্ক্রিপ্টে উপাদানের ক্রমবর্ধমান ফ্রিকোয়েন্সির উপর ভিত্তি করে সাজানো অ্যারে