Tính toán và in giá trị của tổ hợp C
Trong bài tập này chúng ta sẽ thực hiện chương trình để tính toán và in giá trị của tổ hợp C. Qua bài tập này sẽ giúp các bạn biết được cách tính tổ hợp của một số trong C++.
Tổ hợp C có thể được biểu diễn dưới dạng C (n, r) Công thức là:
C (n, r) = n! / (r! (n - r)!).
Với 0 <= r <= n. Đây ! đại diện cho giai thừa.
Ví dụ: C (6, 2) = 6! / (2! * (6-2)!) => 720 / (2 * 24) => 15
Bài viết này được đăng tại [free tuts .net]
Chương trình tính toán và in giá trị của tổ hợp C
Cũng như bài tập trước là thực hiện tính toán và in giá trị của chỉnh hơp P. Trong ví dụ này chúng ta cũng cần tạo một hàm để tính tổ hợp, sau đó gọi nó ra ở hàm main() để thực hiện tính toán với các số mà người dùng đã nhập vào.
#include <iostream> using namespace std; int fact(int num); int main() { int n, r, ncr_var; cout<<"Nhập vào bắt đầu r: "; cin>>r; cout<<"\nNhập vào số kết thúc n: "; cin>>n; ncr_var = fact(n) / (fact(r) * fact(n - r)); cout<<"Giá trị của P("<<n<<","<<r<<") là: "<<ncr_var; cout<<"\n-----------------------------------\n"; cout<<"Chương trình này được đăng tại Freetuts.net"; } int fact(int num) { int k = 1, i; // factorial of 0 is 1 if (num == 0) { return(k); } else { for (i = 1; i <= num; i++) { k = k * i; } } return(k); }
Kết quả sau khi chạy chương trình:
Như vậy là chúng ta đã thực hiện xong chương trình tính toán và in giá trị của tổ hợp C. Chúc các bạn thực hiện thành công!!!