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

জাভাস্ক্রিপ্টে ফ্যাক্টোরিয়ালের ডিজিট সমষ্টি ক্যালকুলেট করা


সমস্যা বিবরণ

একটি নম্বর দেওয়া আছে। এর ফ্যাক্টোরিয়াল বের করে তার ডিজিটগুলোর যোগফল রিটার্ন করতে হবে।

উদাহরণ: ৬! = ৭২০ → ডিজিট সমষ্টি = ৭+২+০ = ৯

সমাধান

const factorial = (num) => {
  if (num == 1) return 1;
  return num * factorial(num - 1);
};

const sumOfDigits = (num = 1) => {
  const str = num.toString();
  let sum = 0;
  for (var x = -1; ++x < str.length;) {
    sum += +str[x];
  }
  return sum;
};

const sumFactorialDigits = num => sumOfDigits(factorial(num));

console.log(sumFactorialDigits(6)); // 9

আউটপুট

9

নোট

  • রিকার্সিভ ফ্যাক্টোরিয়াল বড় নম্বরের জন্য স্ট্যাক ওভারফ্লো করতে পারে।
  • বড় নম্বরের জন্য বাইজেন্ট বা ইটেরেটিভ পদ্ধতি ভালো।
  1. জাভাস্ক্রিপ্টে রিকার্শন ব্যবহার করে সংখ্যার সব ডিজিটের সাম বের করা

  2. জাভাস্ক্রিপ্টে ক্লামসি ফ্যাক্টোরিয়াল সমস্যার সমাধান

  3. জাভাস্ক্রিপ্টে বাটন ক্লিকে যোগফল ফাংশন

  4. জাভাস্ক্রিপ্টে সংখ্যার ফ্যাক্টোরিয়ালের অঙ্ক সংখ্যা বের করা