Công cụ này dùng để làm gì
Công cụ Tạo Lá Bài Tây Ngẫu Nhiên giúp bạn rút một hoặc nhiều lá bài từ một bộ bài tây tiêu chuẩn ảo vừa được trộn lại. Bạn tự quyết định rút bao nhiêu lá, có tùy chỉnh bộ bài hay không, và mỗi lá rút ra sẽ được đặt lại vào bộ (có hoàn lại) hay để riêng ra (không hoàn lại). Đây là trợ thủ đắc lực cho các trò chơi bài, bài giảng xác suất trên lớp, màn ảo thuật, việc đưa ra quyết định, hay bất cứ khi nào bạn cần một lá bài ngẫu nhiên thật sự công bằng và không thiên vị.
Cách sử dụng
Nhập số lá bài muốn rút, chọn chế độ rút và đặt số lá hiển thị trên mỗi hàng. Trong phần Thiết Lập Bộ Bài, bạn có thể bật/tắt từng chất (Tép, Rô, Cơ, Bích) và từng số (từ 2 đến Át), đồng thời thêm 0, 1 hoặc 2 lá joker. Bộ bài thực tế sẽ gồm mọi cặp số-và-chất đều được tick chọn, cộng với số joker bạn thêm vào. Mặc định, bộ bài là đầy đủ 52 lá.
Giải thích công thức
Bộ bài là một danh sách gồm \(N\) lá. Để rút một lá, ta tính chỉ số ngẫu nhiên đều
$$i = \lfloor \text{random()} \times N \rfloor$$trong đó random() trả về một số thực trong khoảng \([0, 1)\). Ở chế độ "Có hoàn lại", mỗi lần rút đều độc lập và lấy từ toàn bộ bộ bài, nên cùng một lá có thể xuất hiện nhiều lần. Ở chế độ "Không hoàn lại", ta thực hiện thuật toán trộn Fisher-Yates — với \(k\) chạy từ \(N-1\) xuống 1, ta chọn
$$j = \lfloor \text{random()} \times (k+1) \rfloor,\quad D[k] \leftrightarrow D[j]$$rồi hoán đổi vị trí \(k\) và \(j\) — sau đó lấy các lá đầu tiên, đảm bảo không bị trùng lặp.
Ví dụ minh họa
Dùng bộ bài mặc định 52 lá, rút 2 lá ở chế độ "Có hoàn lại": giả sử random() trả về 0,0769 rồi đến 0,6442. Chỉ số lá 1
$$\lfloor 0{,}0769 \times 52 \rfloor = 3$$chỉ số lá 2
$$\lfloor 0{,}6442 \times 52 \rfloor = 33$$Kết quả là một cặp lá bài có thứ tự, chẳng hạn "5 Tép" và "9 Bích", được hiển thị hai lá trên một hàng.
Câu hỏi thường gặp
Chế độ Có hoàn lại và Không hoàn lại khác nhau thế nào? Có hoàn lại nghĩa là rút rồi đặt lá bài trở lại (có thể bị trùng); Không hoàn lại nghĩa là rút mà không đặt lại (mọi lá đều khác nhau, giống như chia một ván bài).
Tôi có thể rút nhiều lá hơn số lá trong bộ bài không? Chỉ ở chế độ Có hoàn lại. Ở chế độ Không hoàn lại, số lá rút bị giới hạn bằng kích thước bộ bài, vì bạn không thể chia ra nhiều lá khác nhau hơn số lá hiện có.
Joker được xử lý ra sao? Joker không có chất và đơn giản được gọi là "Joker". Khi có hai joker ở chế độ Không hoàn lại, chúng được tính là hai lần rút khác nhau dù cùng tên gọi.