Ví dụ để tìm giai thừa của một số nguyên không âm (do người dùng nhập vào) bằng cách sử dụng đệ quy.
Để hiểu ví dụ này, bạn nên có kiến thức về các chủ đề lập trình C ++ sau:
- Các hàm trong C ++
- Các loại hàm do người dùng định nghĩa trong C ++
- C ++ if, if… else và Nested if… else
- C ++ đệ quy
Chương trình này lấy một số nguyên dương từ người dùng và tính giai thừa của số đó. Giả sử, người dùng nhập 6 sau đó,
Giai thừa sẽ bằng 1 * 2 * 3 * 4 * 5 * 6 = 720
Bạn sẽ học cách tìm giai thừa của một số bằng hàm đệ quy trong ví dụ này.
Truy cập trang này để tìm hiểu, cách bạn có thể sử dụng vòng lặp để tính giai thừa.
Ví dụ: Tính giai thừa sử dụng đệ quy
#include using namespace std; int factorial(int n); int main() ( int n; cout <> n; cout << "Factorial of " << n << " = " < 1) return n * factorial(n - 1); else return 1; )
Đầu ra
Nhập một số nguyên dương: 6 Giai thừa của 6 = 720
Trong chương trình trên, giả sử người dùng nhập số 6. Số được chuyển cho factorial()
hàm.
Trong hàm này, 6 được nhân với giai thừa của (6 - 1 = 5). Đối với điều này, số 5 được chuyển một lần nữa vào factorial()
hàm.
Tương tự như vậy trong lần lặp tiếp theo, 5 được nhân với giai thừa của (5 - 1 = 4). Và, 4 được chuyển cho factorial()
hàm.
Điều này tiếp tục cho đến khi giá trị đạt đến 1 và hàm trả về 1.
Bây giờ, mỗi hàm trả về giá trị để tính 1 * 2 * 3 * 4 * 5 * 6 = 720, được trả về cho main()
hàm.