Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

การหาผลคูณของทุกหลักในตัวเลขแบบ Recursive - JavaScript

หาผลคูณของตัวเลขทุกหลัก โดยถ้าหลักไหนเป็น 0 ให้ถือเป็น 1 (ไม่ให้ผลคูณเป็น 0)

ตัวอย่าง

5720 → 5 × 7 × 2 × 1(แทน 0) = 70

ตัวอย่างโค้ด

const num = 5720;

const recursiveProduct = (num, res = 1) => {
  if (num) {
    return recursiveProduct(Math.floor(num / 10), res * (num % 10 || 1));
  }
  return res;
};

console.log(recursiveProduct(num));

การทำงาน

  • num % 10 ดึงหลักหน่วย
  • || 1 ถ้าเป็น 0 ให้ใช้ 1 แทน
  • Math.floor(num / 10) ตัดหลักหน่วย
  • res สะสมผลคูณ

ผลลัพธ์

70