Nhờ anh chị em gỡ rối : Lấy ngẫu nhiên 1 dãy số với 3 điều kiện. (2 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

LitleBIG

Thành viên mới
Tham gia
3/9/18
Bài viết
2
Được thích
0
Xin chào mọi người.
Xin anh chị em cao thủ giúp gỡ rối bài toán:
Mình cần xây dựng hàm trong excel để lấy n số nguyên ngẫu nhiên a1, a2,....., an, sao cho:
-Tổng (a1+a2+...+an) = T , (T cho trước).
- A < a1, a2,...,an <= Z (A và Z cho trước, A>0).

Xin cảm ơn!
 
Lần chỉnh sửa cuối:
Xin chào mọi người.
Xin anh chị em cao thủ giúp gỡ rối bài toán:
Mình cần xây dựng hàm trong excel để lấy n số nguyên ngẫu nhiên a1, a2,....., an, sao cho:
-Tổng (a1+a2+...+an) = T , (T cho trước).
- A < a1, a2,...,an <= Z (A và Z cho trước).

Xin cảm ơn!
Có lấy trùng không?
 
Có thể trùng cũng được ạ, 0<A<a1,...,an<Z
Bài đã được tự động gộp:

Bài nầy dùng hàm excel nên loại trùng chịu thua, còn chấp nhận trùng thì dùng toán chia là ra:
T=50, n=5 => x1=10, x2=10 ....
Bài toán cụ thể của mình:
T=250, 0<Xn<=40, n=8, Xn là số nguyên
 
Lần chỉnh sửa cuối:
Bài nầy dùng hàm excel nên loại trùng chịu thua, còn chấp nhận trùng thì dùng toán chia là ra:
T=50, n=5 => x1=10, x2=10 ....
Hình như đầu bài khong phải vậy. Theo tôi hiểu thì n không nhất định, muốn bao nhiêu cũng được.
Đại khái:
cho một tập hợp số nguyên với
a, a+1, a+2, ...., a+m
a = A + 1; và a+m = Z
Tức là tập hợp các số nguyên liên tiếp từ A+1 đến Z (tại sao lại A+1 mà không phải A thì tôi cũng chả biết)
Công việc:
- Trường hợp không trùng: chọn từ tập hợp ấy ra một tập hợp con sao cho tổng bằng T.
- Trường hợp có trùng: chọn những số từ tập hợp ấy và điền cho đủ T, một số chọn mấy lần cũng được.
 
Hình như đầu bài khong phải vậy. Theo tôi hiểu thì n không nhất định, muốn bao nhiêu cũng được.
Đại khái:
cho một tập hợp số nguyên với
a, a+1, a+2, ...., a+m
a = A + 1; và a+m = Z
Tức là tập hợp các số nguyên liên tiếp từ A+1 đến Z (tại sao lại A+1 mà không phải A thì tôi cũng chả biết)
Công việc:
- Trường hợp không trùng: chọn từ tập hợp ấy ra một tập hợp con sao cho tổng bằng T.
- Trường hợp có trùng: chọn những số từ tập hợp ấy và điền cho đủ T, một số chọn mấy lần cũng được.

Theo bài #5 có thêm rằng buộc số phần tử của tập hợp con. :)

------------ (rất không thích kiểu tự động gộp bài này ------------

Bài toán cụ thể của mình:
T=250, 0<Xn<=40, n=8, Xn là số nguyên
Solver, kết quả được tập hợp 7 số: {32 33 35 36 37 38 39}.

Từ tập hợp này tách số bất kỳ thành tổng của 2 số là được tập hợp 8 số cần tìm.

Ví dụ: {1 31 33 35 36 37 38 39}
 
Lần chỉnh sửa cuối:
Có thể trùng cũng được ạ, 0<A<a1,...,an<Z
Bài đã được tự động gộp:


Bài toán cụ thể của mình:
T=250, 0<Xn<=40, n=8, Xn là số nguyên
Dùng hàm COMBIN() tính được số tổ hợp chập 8 của 40 = 76904685. Các phần tử lấy nhiều lần thì chắc số lượng còn lớn hơn.
Kết quả thu được có lẽ > 1. Nếu đúng là nhiều hơn 1 kêt quả thì bạn sẽ lấy tất cả các trường hợp hay là tìm ra 1 tổ hợp rồi dừng
 
Dùng hàm COMBIN() tính được số tổ hợp chập 8 của 40 = 76904685. Các phần tử lấy nhiều lần thì chắc số lượng còn lớn hơn.
Kết quả thu được có lẽ > 1. Nếu đúng là nhiều hơn 1 kêt quả thì bạn sẽ lấy tất cả các trường hợp hay là tìm ra 1 tổ hợp rồi dừng
Bài toán này được bàn nhiều trên các diễn đàn chuyên Perl, Java, JavaScript, và Python.
Muốn làm thì lên đó xem.
Nếu muốn dịch ra VBA thì vào đó lượm một bài đưa lên đây. Tuy nhiên tôi cảnh baáo trước rằng loại bài toán này là chuyên toán cho nên nó thích hợp với Unix và Perl. VBA không phải là loại ngôn ngữ chuyên toán cho nên sẽ dịch ra rất dài.

Theo tôi thì bác HieuCD giỏi toán, có lẽ đã có bài giải rồi.
 
Bài toán này được bàn nhiều trên các diễn đàn chuyên Perl, Java, JavaScript, và Python.
Muốn làm thì lên đó xem.
Nếu muốn dịch ra VBA thì vào đó lượm một bài đưa lên đây. Tuy nhiên tôi cảnh baáo trước rằng loại bài toán này là chuyên toán cho nên nó thích hợp với Unix và Perl. VBA không phải là loại ngôn ngữ chuyên toán cho nên sẽ dịch ra rất dài.

Theo tôi thì bác HieuCD giỏi toán, có lẽ đã có bài giải rồi.
Cám ơn bác đã cảnh báo. Bài này không cần lượm lặt gì đâu bác ạ.
Có thể trùng cũng được ạ, 0<A<a1,...,an<Z
Bài đã được tự động gộp:

Bài toán cụ thể của mình:
T=250, 0<Xn<=40, n=8, Xn là số nguyên
Với cái đầu bài của bài 5, không trùng, kết quả là 12356 tổ hợp tìm thấy bằng vba.
Còn trùng thế nào thì để chờ mấy bác giỏi toán vậy
 
Có thể trùng cũng được ạ, 0<A<a1,...,an<Z
Bài đã được tự động gộp:


Bài toán cụ thể của mình:
T=250, 0<Xn<=40, n=8, Xn là số nguyên
Dùng công thức excel, nhấn F9 để lấy kết quả mới
Bài toán này được bàn nhiều trên các diễn đàn chuyên Perl, Java, JavaScript, và Python.
Muốn làm thì lên đó xem.
Nếu muốn dịch ra VBA thì vào đó lượm một bài đưa lên đây. Tuy nhiên tôi cảnh baáo trước rằng loại bài toán này là chuyên toán cho nên nó thích hợp với Unix và Perl. VBA không phải là loại ngôn ngữ chuyên toán cho nên sẽ dịch ra rất dài.

Theo tôi thì bác HieuCD giỏi toán, có lẽ đã có bài giải rồi.
Bác quá lời rồi, mình chỉ quen mấy phép toán cộng trừ nhân chia thôi :)
 

File đính kèm

Web KT

Bài viết mới nhất

Back
Top Bottom