C #: Cần hướng dẫn bài tập
Mấy bạn chỉ mình bài tập này với, mình làm được phần 1, nhưng phần hai mình chưa nghĩ ra mong mọi người hướng dẫn cho em phần hai với
Xây dựng chương trình chia bài và sắp xếp các quân bài gồm các câu sau:
Phần 1: Tạo lớp quân bài với 2 thuộc tính:
-
Số nút, trong đó quy ước 11 là J, 12 là Q, 13 là K, 14 là A và 15 là 2
-
Tính chất: 1 là bích, 2 là chuồn, 3 là rô, 4 là cơ
-
Viết hàm khởi tạo lớp
-
Viết hàm nhập giá trị cho một quân bài
-
Viết hàm trả về tính chất của quân bài. Ví dụ, nhập là 14 và 2, thì trả về là Ắt chuồn
Phần 2: Thực hiện mô phỏng quá trình chia bài và sắp bài -
Viết hàm phát sinh ngẫu nhiên giá trị cho 13 quân bài cho 4 người chơi, sao cho đảm bảo tính chất
1/ Không có 2 quân bài trùng nhau
2/ Giá trị quân bài nằm trong khoảng như quy ước ở trên
- Viết hàm sắp xếp 13 quân bài của từng người
Bạn thử dùng theo cách sau.
Bạn tạo 1 class người chơi với thông tin như username, list danh sách các đối tượng quân bài
Duyệt qua danh sách người chơi, bạn dùng hàm Random phát sinh ra từ 1-52 để phát sinh ra quân bài (1->Át Cơ,2->Át Rô,3->Át Tép,4->Át Bích), sau đó bạn kiểm tra xem quân bài đó đã thuộc về người chơi nào chưa bằng cách check exists trong list danh sách các đối tượng quân bài của từng người chơi, nếu tồn tại rồi thì Random lại.
Bạn sẽ gặp 1 số vấn đề sau, các quân bài còn càng ít, thì tỉ lệ bạn random lại càng nhiều, có thể là random forever, nên bạn nên giới hạn số lần random tối đa là 5 hay10 gì đó, sau đó nếu vẫn k ra được quân bài chưa tồn tại, thì bạn có thể duyệt từ 1-52, nếu quân nào chưa tồn tại thì lấy luôn.
hy vọng giúp gì được cho bạn.