Bài tập  /  Bài đang cần trả lời

Tin học - Lớp 9
15/07 15:36:30

Tôi có 10 cái bánh. Tôi muốn biết thứ tự ăn như thế nào để ăn hết 10 cái bánh này. Liệu có bao nhiêu cách?

code c++ tổ hợp

tôi có 10 cái bánh. tôi muốn biết thứ tự uăn như thế nào để ăn hết 10 cái bánh này. Liệu có bao nhiêu cách?
tôi có 3 loại bánh A,B,C khác nhau. có nhiêu cách mua 5 cái bánh từ 3
loại trên?
1 trả lời
Hỏi chi tiết
37
Tham khảo câu trả lời từ Trợ lý ảo Lazi
Để giải quyết các vấn đề này, chúng ta cần sử dụng các khái niệm về hoán vị và tổ hợp trong toán học.

1. **Thứ tự ăn 10 cái bánh:**
- Đây là một bài toán về hoán vị. Số cách ăn 10 cái bánh khác nhau là số hoán vị của 10 phần tử.
- Công thức tính số hoán vị của \( n \) phần tử là \( n! \) (giai thừa của \( n \)).
- Với \( n = 10 \), số cách ăn 10 cái bánh là \( 10! \).

2. **Mua 5 cái bánh từ 3 loại bánh A, B, C:**
- Đây là một bài toán về tổ hợp với lặp lại. Số cách chọn \( k \) phần tử từ \( n \) loại khác nhau với phép lặp lại là \( \binom{n+k-1}{k} \).
- Ở đây, \( n = 3 \) (3 loại bánh) và \( k = 5 \) (5 cái bánh).
- Số cách mua 5 cái bánh từ 3 loại bánh là \( \binom{3+5-1}{5} = \binom{7}{5} \).

Dưới đây là mã C++ để tính các giá trị này:

```cpp
#include
using namespace std;

// Hàm tính giai thừa
unsigned long long factorial(int n) {
unsigned long long result = 1;
for (int i = 1; i <= n; ++i) {
result *= i;
}
return result;
}

// Hàm tính tổ hợp C(n, k)
unsigned long long combination(int n, int k) {
if (k > n) return 0;
if (k == 0 || k == n) return 1;
return factorial(n) / (factorial(k) * factorial(n - k));
}

int main() {
// Bài toán 1: Thứ tự ăn 10 cái bánh
int n = 10;
unsigned long long waysToEat = factorial(n);
cout << "So cach an 10 cai banh la: " << waysToEat << endl;

// Bài toán 2: Mua 5 cái bánh từ 3 loại bánh A, B, C
int typesOfCakes = 3;
int cakesToBuy = 5;
unsigned long long waysToBuy = combination(typesOfCakes + cakesToBuy - 1, cakesToBuy);
cout << "So cach mua 5 cai banh tu 3 loai banh la: " << waysToBuy << endl;

return 0;
}
```

Chạy chương trình này sẽ cho bạn kết quả:
- Số cách ăn 10 cái bánh là \( 10! \).
- Số cách mua 5 cái bánh từ 3 loại bánh là \( \binom{7}{5} \).

Hy vọng điều này giúp bạn hiểu rõ hơn về cách tính toán và lập trình các bài toán tổ hợp và hoán vị!
1
0
Nguyễn Huy Mạnh
15/07 15:39:08
+5đ tặng
tôi có 10 cái bánh. tôi muốn biết thứ tự uăn như thế nào để ăn hết 10 cái bánh này
=> có 10! cách chọn thứ tự để ăn 10 cái bánh

Mở khóa để xem toàn bộ nội dung trả lời

(?)
Bạn đã đạt đến giới hạn của mình. Bằng cách Đăng ký tài khoản, bạn có thể xem toàn bộ nội dung trả lời
Cải thiện điểm số của bạn bằng cách đăng ký tài khoản Lazi.
Xem toàn bộ các câu trả lời, chat trực tiếp 1:1 với đội ngũ Gia sư Lazi bằng cách Đăng ký tài khoản ngay bây giờ
Tôi đã có tài khoản? Đăng nhập

Bạn hỏi - Lazi trả lời

Bạn muốn biết điều gì?

GỬI CÂU HỎI
Học tập không giới hạn cùng học sinh cả nước và AI, sôi động, tích cực, trải nghiệm

Hôm nay bạn thế nào? Hãy nhấp vào một lựa chọn, nếu may mắn bạn sẽ được tặng 50.000 xu từ Lazi

Vui Buồn Bình thường

Học ngoại ngữ với Flashcard

×
Gia sư Lazi Gia sư
×
Trợ lý ảo Trợ lý ảo