Chọn từ tối đa 10 mặt hàng và số lượng sao cho tổng số thành tiền bằng 1 số cho trước.

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài
vấn đề ở đây không phải là hợp lệ hay không. vấn đề là khi e nhập 1 số bất kì thì phải tự động nhảy ra 10 sản phẩm và số lượng cho đúng với số em vừa nhập. Bác có thể tham khảo ở sheet BBG. Khi nhập tổng tiền sẽ tự động nhảy sản phẩm và số lượng trong sheet dữ liệu. Và tất cả số trong hóa đơn đều phải hợp lý (vd trong sheet BBG chưa hợp lý ở đây là số lượng đang bị lẻ). Em nói rõ luôn là sẽ hậu tạ ở đây cho bác nào hỗ trợ e hoàn thành được file theo yêu cầu cuả em chứ k phải em đưa đề bài cho các bác giải rồi bắt bẻ câu chữ.
Chẳng ai mất công bắt bẻ câu chữ cho mệt.
Đầu bài thế nào thì giải như vậy. Ra kết quả là đạt. Không ra kết quả là không đạt
Chọn từ tối đa 10 mặt hàng và số lượng sao cho tổng số thành tiền bằng 1 số cho trước.

Chào các bác GPE, em cần nhờ các bác hỗ trợ giúp em ca này. Khi e nhập số Tổng tiền thì sẽ tự động nhảy mặt hàng và số lượng cho đúng với số tổng em vừa nhập. Ca này bác nào làm được báo giá để em hậu tạ luôn nhé.

File trên là đạt yêu cầu bài 1 rồi bạn!

---
Chỗ như dưới là ràng buộc mới à bạn?
vd trong sheet BBG chưa hợp lý ở đây là số lượng đang bị lẻ)
 
Chẳng ai mất công bắt bẻ câu chữ cho mệt.
Đầu bài thế nào thì giải như vậy. Ra kết quả là đạt. Không ra kết quả là không đạt


File trên là đạt yêu cầu bài 1 rồi bạn!

---
Chỗ như dưới là ràng buộc mới à bạn?
Bác là cố tình không hiểu hay như nào đấy???
E đã nói rõ yêu cầu rồi mà cứ vin vào cái title nhỉ :)))
 
Theo ý tớ thì tùy tâm thôi.

Dù sao cũng là 1 cách giải. Chứ số lẻ như BBG thì dễ hơn nhiều. Mua chai, lọ, túi mà số lượng toàn lẻ x.xxx thì ép siêu thị quá đáng.
 
Lần chỉnh sửa cuối:
Bác là cố tình không hiểu hay như nào đấy???
E đã nói rõ yêu cầu rồi mà cứ vin vào cái title nhỉ :)))
Nhập số vào F1 sheet3 rồi chạy solver.
Đây là file chỉ dùng để test mô hình nên kết quả có thể có sai lệch nhỏ.

Nếu dùng hoàn toàn VBA thì sẽ phải viết lại
 

File đính kèm

Á đù, đã hoàn thành giao kèo. Chúc mừng đôi bên hạnh phúc và vui vẻ.

Nếu khống chế thêm SL nữa thì sẽ đẹp hơn.

1698375942551.png

Bo nút khống chế khối lượng là ...tr nữa nhé. --=0 --=0 --=0
 
Sử dụng Solver thì phải biết 2 chuyện:
1. Cần phải đặt giới hạn, chạy thử đủ n lượt mà khong ra thì cho phép nó "chịu thua".
2. Đôi khi cần phải đoán sơ qua giải đáp gần đúng, để cho nó bắt đầu từ đấy.
 
Công nhận bài này khó.
Dùng Solver trong VBA thì ra kết quả, nhưng xử lý quá lâu.
Mình đang loay hoay dùng thuật toán backtracking (dạng đệ quy), (dùng sub chính gọi hàm function đệ quy...) mà vẫn bị vướng về tốc độ xủ lý...
 
Bài này sử dụng solver hợp lý có lẽ thời gian ra kết quả chỉ tính bằng giây. Có cái là thấy chủ thớt đưa file lên mà vẫn để protectsheet có vẻ là thiếu tôn trọng nên mới làm như vậy chứ không phải vì 1 triệu vnđ.
 
Chà, cái vụ này mình cũng hóng, giống như kiểu chọn số Vietlot sao cho trúng giải Jackpot :D
 
Bài này về mặt solver thì giải quyết đáp ứng của bài 1.

Tuy nhiên, nếu đi sâu đi sát nữa thì ý bài 1 là chọn con số tổng, rồi mới mò vật liệu, số lượng, đơn giá để đạt được yêu cầu đó. Tình huống này sẽ phải cực kỳ ít nghiệm (bác bebo đang theo hướng này thì phải). Và yêu cầu là đáp án phải lệch 0đ (hóa đơn đòi hỏi cao gê).

Solver bài này cũng may là nhiều tổ hợp nghiệm thỏa mãn, chứ không phải tìm mã hàng n lần rồi mới solver.

Tuy nhiên, tác giả không nên viện vào ý này mà trốn tránh giải thưởng. Nếu trao thì trao, không thì cứ im lặng thôi.

Về khóa sheet như Cháo Quẩy thì không nên trách tác giả, vì nó chả có ý nghĩa gì khi mà chai, lọ, túi mà mua lẻ tè le, khả năng protect là tác giả không có password thật đâu.

_)(#; _)(#; _)(#;
 
Giống cái mốc xì. Hai cái là một trời một vực. Về học lại Toán ứng dụng đi.
Ố ồ, sao lại sân si thế nhỉ, chỉ là cách nhìn nhận để có thể có thêm phương pháp và quan điểm nhằm giải quyết. Mình mù tịt toán ứng dụng, bạn có mở lớp không để mình tham khảo nào?
 
...

Về khóa sheet như Cháo Quẩy thì không nên trách tác giả, vì nó chả có ý nghĩa gì khi mà chai, lọ, túi mà mua lẻ tè le, khả năng protect là tác giả không có password thật đâu.

_)(#; _)(#; _)(#;
Việc protectsheet tùy quan điểm từng người thôi bạn. Xét về dữ liệu đầu vào có lẽ là không có vấn đề gì. Nhưng đánh giá về thái độ trao đổi thông tin thì có lẽ là có đấy bạn
 
Trên máy tôi code do tôi viết chạy hết <2s (nhưng tiền thì chỉ gần đúng (thường là thừa từ khoảng <20k, và cho rất nhiều phương án.
 

File đính kèm

  • Screenshot (116).png
    Screenshot (116).png
    166.4 KB · Đọc: 11
  • Screenshot (117).png
    Screenshot (117).png
    155 KB · Đọc: 11
Việc protectsheet tùy quan điểm từng người thôi bạn. Xét về dữ liệu đầu vào có lẽ là không có vấn đề gì. Nhưng đánh giá về thái độ trao đổi thông tin thì có lẽ là có đấy bạn
Khi nào có tin vui báo anh em chúc mừng nhé.

Trên máy tôi code do tôi viết chạy hết <2s (nhưng tiền thì chỉ gần đúng (thường là thừa từ khoảng <20k, và cho rất nhiều phương án.
Bác để số lẻ đến "đồng" thế kia thì sao về 0 được? Nhưng suất có hạn và đang bị treo.
_)(#;_)(#;_)(#;
 
Bác để số lẻ đến "đồng" thế kia thì sao về 0 được? Nhưng suất có hạn và đang bị treo.
_)(#;_)(#;_)(#;
Tôi biết mình không có cửa để mà ganh đua, với lại tôi cũng không ham hố sổ số hay vietlot gì.
Cũng là làm bài cho vui thôi. Coi đó là 1 bài tập để mình vượt qua. Nhưng so với yêu cầu của đề thì trượt rồi.
 
Web KT

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

Back
Top Bottom