เราต้องเขียนฟังก์ชัน JavaScript ที่รับตัวเลข ฟังก์ชันควรก่อนคำนวณแฟกทอเรียลของตัวเลขนั้น แล้วควรคืนค่าผลรวมของหลักตัวเลขของแฟกทอเรียลที่คำนวณได้
เช่น สำหรับตัวเลข 6 แฟกทอเรียลจะเป็น 720 ดังนั้นผลลัพธ์ควรเป็น 9
ตัวอย่าง
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