เราต้องเขียนฟังก์ชันที่รับตัวเลขและรวมเลขหลักซ้ำๆ จนได้ผลลัพธ์เป็นตัวเลขหลักเดียว
ตัวอย่าง: 5798 → 5+7+9+8=29 → 2+9=11 → 1+1=2 → ผลลัพธ์ 2
ตัวอย่างโค้ด
const num = 5798;
const sumDigits = (num, sum = 0) => {
if (num) { return sumDigits(Math.floor(num / 10), sum + (num % 10)); }
return sum;
};
const repeatSum = (num) => {
if (num > 9) { return repeatSum(sumDigits(num)); }
return num;
};
console.log(repeatSum(num));
ผลลัพธ์
ค่าที่แสดงในคอนโซลจะเป็นดังนี้:
2