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

Factorial Recursion ใน JavaScript

โจทย์

คำนวณ Factorial แบบ Recursive

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

const num = 9; 
const recursiceFactorial = (num, res = 1) => { 
  if(num){ 
    return recursiceFactorial(num-1, res * num); 
  }; 
  return res; 
}; 
console.log(recursiceFactorial(num)); 
console.log(recursiceFactorial(6)); 
console.log(recursiceFactorial(10)); 
console.log(recursiceFactorial(5)); 
console.log(recursiceFactorial(13));

ผลลัพธ์

362880 
720 
3628800 
120 
6227020800

คำอธิบาย

Tail recursion pattern: recursiceFactorial(n, acc)
Base case: num=0 → return accumulator
Recursive case: เรียกตัวเองด้วย n-1 และ acc*n
9! = 362880, 6! = 720, 10! = 3628800, 5! = 120, 13! = 6227020800