Cách dùng
- Nhấn Tung hoặc click vào đồng xu. Đồng xu xoay và rơi ra Ngửa hoặc Sấp.
- Cần cả một chuỗi? Tung ×10 giải quyết mười lần tung trong một cú nhấn và cộng tất cả vào bộ đếm cùng lịch sử.
- Đọc ba bộ đếm bên dưới: số ngửa tính tới lúc này, số sấp tính tới lúc này, và chuỗi dài nhất — dãy dài nhất của cùng một mặt trong phiên này, bất kể mặt nào.
- Dải phía dưới liệt kê 60 kết quả gần nhất bằng N và S, mới nhất ở bên phải, nên bạn đọc được một chuỗi chỉ với một cái liếc mắt.
- Reset xóa bộ đếm, chuỗi và lịch sử rồi bắt đầu phiên mới. Tải lại trang cũng làm điều tương tự.
Ngửa hay sấp: điều gì nên giải quyết bằng một lần tung
Tung đồng xu là cách nhanh nhất để kết thúc một tranh cãi hai lựa chọn, và nó hiệu quả vì cả hai người chấp nhận tỉ lệ trước khi có kết quả. Cách dùng phổ biến trong một buổi chơi game:
- Ai chọn bản đồ hoặc chọn phe trong một trận scrim thân thiện, khi không đội nào muốn bắt đầu vòng cấm chọn.
- Ai đi trước trong 1v1, một ván cờ, một board game hay một phòng custom Free Fire.
- Tối nay chơi game nào trong hai game, khi cả nhóm đã cãi nhau hai mươi phút.
- Ai mua đồ / ai đi hỗ trợ — những quyết định nhỏ làm chậm cả một đội năm người.
- Đấu tốt nhất trong ba hoặc năm ván: tung tới khi một bên đạt hai hoặc ba chiến thắng thay vì chỉ một lần tung.
- Board game và D&D: một đồng xu là một con xúc xắc hai mặt sạch sẽ cho lựa chọn 50/50 trong cốt truyện.
Một giới hạn thành thật: các trận đấu esports chính thức quyết định phe ngay trong game — CS2 chơi một round dao, phần lớn tựa game có jam tung xu riêng trong client — nên hãy coi việc tung xu bằng trình duyệt là công cụ cho chơi thân và cộng đồng, không phải thứ trọng tài sẽ chấp nhận làm kết quả chính thức.
Chuỗi: năm lần ngửa liên tiếp là bình thường
"Cái này bị lỗi, nó cho tôi năm lần ngửa liên tiếp" là lời than phiền phổ biến nhất về bất kỳ công cụ đồng xu nào. Các chuỗi không phải bằng chứng đồng xu bị lỗi; đó chính là những gì một đồng xu công bằng sẽ làm. Toán học ở đây chính xác, nên hãy xem bảng dưới đây.
| Chuỗi cùng một mặt | Trong 20 lần tung | Trong 50 lần tung | Trong 100 lần tung |
|---|---|---|---|
| 4 trở lên | 76,8% | 98,1% | trên 99% |
| 5 trở lên | 45,8% | 82,1% | 97,2% |
| 6 trở lên | 23,7% | 54,4% | 80,7% |
| 7 trở lên | 11,5% | 30,9% | 54,2% |
| 8 trở lên | 5,4% | 16,2% | 31,5% |
| 10 trở lên | 1,2% | 4,1% | 8,7% |
Đọc lại cột cuối cùng: trong một trăm lần tung, một chuỗi từ sáu trở lên xuất hiện bốn trên năm lần, và chuỗi dài nhất trung bình vào khoảng bảy. Vậy nếu bạn nhấn Tung ×10 mười lần và bộ đếm chuỗi hiện 7, đồng xu đang hoạt động đúng như dự đoán.
Mặt trái của sự thật này là ngộ nhận của con bạc. Sau bốn lần ngửa, sấp không "sắp tới lượt" — lần tung tiếp theo vẫn 50/50, vì đồng xu không có trí nhớ về bốn lần trước. Điều thực sự cân bằng ra là tỉ lệ: ở 20 lần tung, tỉ số 13–7 chẳng có gì đáng chú ý, còn ở 1000 lần tung bạn thường sẽ nằm trong vài phần trăm quanh mức một nửa. Số đếm tuyệt đối lệch xa nhau hơn trong khi phần trăm lại khít lại.
Lần tung được tạo ra như thế nào
Mỗi lần tung yêu cầu crypto.getRandomValues() của trình duyệt để lấy các bit không thể đoán trước mới tinh — cùng Web Crypto API tạo ra khóa mã hóa — rồi ánh xạ chúng lên hai kết quả. Vì số hai chia hết 2^32, một đồng xu không cần chỉnh sửa gì cả: mọi giá trị thô đều ánh xạ gọn gàng lên ngửa hoặc sấp, và bước lấy mẫu loại bỏ mà các công cụ ngẫu nhiên khác trên trang dùng cho các khoảng như 1–6 hay 1–100 không bao giờ phải kích hoạt ở đây. Kết quả là một tỉ lệ 50/50 sạch, không seed, không chuỗi lặp lại.
Thứ tự cũng quan trọng: mặt được quyết định trước, rồi đồng xu mới chạy hoạt ảnh. Cú xoay, thời gian và bạn giữ nút bao lâu không thay đổi gì cả — không có mô phỏng vật lý ẩn nào để "chơi gian", và không có cách nào "tung mạnh hơn" để có kết quả tốt hơn.
Một đồng xu thật thì lộn xộn hơn một chút. Việc đúc tiền không bao giờ hoàn toàn đối xứng, và cách tung và bắt đồng xu có thể đẩy tỉ lệ hơi lệch khỏi một nửa hoàn hảo. Một đồng xu phần mềm không có những đặc điểm vật lý như vậy: đứng sau nó chỉ là một lần rút đồng đều từ hai kết quả có xác suất bằng nhau.
Đọc bộ đếm như một trang thống kê
Ba con số dưới đồng xu biến một món đồ chơi thành một thí nghiệm nhỏ, đó là lý do giáo viên và streamer dùng nó nhiều hơn cả game thủ.
| Bộ đếm | Đếm gì | Hữu ích để làm gì |
|---|---|---|
| Ngửa | Tổng số ngửa trong phiên này | So sánh tỉ lệ với mức một nửa kỳ vọng |
| Sấp | Tổng số sấp trong phiên này | Tương tự, nhìn từ phía còn lại |
| Chuỗi dài nhất | Chuỗi dài nhất của một mặt, bất kể mặt nào | Đối chiếu chuỗi với bảng ở trên |
| Dải lịch sử | 60 kết quả gần nhất dưới dạng N và S | Phát hiện quy luật, đọc to một chuỗi trên stream |
Một thử nghiệm nhanh kiểu lớp học: nhấn Tung ×10 mười lần để có 100 lần tung, rồi so sánh. Ngửa nên gần 50 nhưng hiếm khi đúng 50; chuỗi dài nhất thường nằm giữa 5 và 9. Cả hai đều thuyết phục hơn nhiều so với chỉ nghe nói đồng xu công bằng.
Ba lần tung, tám lựa chọn: dùng đồng xu cho nhiều hơn có/không
Một lần tung chia câu hỏi làm đôi, nhưng một chuỗi ngắn chia nó nhỏ hơn nhiều, vì mỗi lần tung thêm nhân đôi số kết quả: hai lần tung cho bốn, ba lần cho tám, bốn lần cho mười sáu. Tung ba lần, đọc ba chữ cái cuối trong dải lịch sử từ trái sang phải, và tra chuỗi đó.
| Chuỗi | Lựa chọn | Chuỗi | Lựa chọn |
|---|---|---|---|
| N N N | 1 | S N N | 5 |
| N N S | 2 | S N S | 6 |
| N S N | 3 | S S N | 7 |
| N S S | 4 | S S S | 8 |
Vậy là đủ cho một pool tám bản đồ, một danh sách tám thử thách đánh số, hoặc tám người quyết định ai đi trước. Nếu bạn chỉ có năm lựa chọn, hãy thống nhất trước rằng chuỗi 6, 7 và 8 nghĩa là "tung lại" — đó chính xác là phép lấy mẫu loại bỏ mà mã nguồn dùng nội bộ để giữ một khoảng công bằng.
Cùng mẹo đó cho bạn xác suất nhỏ hơn một nửa. Hai lần ngửa liên tiếp là sự kiện 25%, ba lần liên tiếp là 12,5%, bốn lần là 6,25% và năm lần là 3,125%. Vậy một luật riêng như "một trên tám lần, người thua chọn bản đồ" cần ba lần tung, không phải một con xúc xắc.
Và để chia nhóm: tung một lần cho mỗi người, ngửa vào đội A, sấp vào đội B. Các đội khá thường ra số lượng không đều nhau, nên hãy quyết định trước điều gì xảy ra khi đó — thường người tung cuối cùng sẽ chuyển sang đội nhỏ hơn.
Điểm khác biệt của công cụ này
- Ngẫu nhiên mã hóa thay vì
Math.random(), với lý do đã giải thích ở trên. - Tung ×10 cho các chuỗi, nên bạn có thể tạo một trăm lần tung chỉ với mười cú nhấn thay vì một trăm.
- Bộ đếm chuỗi dài nhất và lịch sử 60 kết quả — phần lớn trang tung xu chỉ hiện một kết quả rồi quên nó.
- Cả đồng xu đều bấm được, giúp dùng một tay trên điện thoại ngay trong lúc chơi.
- Không đăng ký, không quảng cáo đè lên đồng xu, không phải chờ một hoạt ảnh không thể bỏ qua.
Điều nó không làm: không lưu phiên của bạn ở bất cứ đâu, không hỗ trợ đồng xu có trọng số hay ba mặt, và không tuyên bố bất kỳ chứng nhận công bằng nào từ bên ngoài. Lập luận về sự công bằng ở đây là đoạn mã được mô tả ở trên, không phải một huy hiệu.
Quyền riêng tư
Lần tung xảy ra hoàn toàn bên trong trình duyệt của bạn. Không gì được gửi tới server, không có tài khoản, và không có log kết quả của bạn tồn tại ở bất cứ đâu — nên không ai có thể tra cứu bạn đã tung ra gì hay thay đổi nó sau đó. Reset xóa bộ đếm ngay lập tức, và đóng tab cũng làm điều tương tự.
Câu hỏi thường gặp
Tung đồng xu có thực sự 50/50 không?
Có. Mỗi lần tung rút các bit mới từ crypto.getRandomValues() và ánh xạ chúng lên hai kết quả chia đều khoảng, nên ngửa và sấp mỗi bên nhận đúng một nửa. Không có seed, không có quy luật và không có lợi thế cho nhà cái.
Có thể tung nhiều đồng xu cùng lúc không?
Nhấn Tung ×10 để có mười lần tung trong một lần. Mỗi lần đều tính vào ngửa, sấp, chuỗi và dải lịch sử, nên mười cú nhấn cho bạn một mẫu sạch gồm 100 lần tung.
Bộ đếm chuỗi dài nhất nghĩa là gì?
Đó là chuỗi dài nhất của cùng một kết quả trong phiên này — năm lần ngửa liên tiếp và năm lần sấp liên tiếp đều hiển thị là 5. Nó reset khi bấm nút Reset hoặc tải lại trang.
Tôi được bảy lần ngửa liên tiếp. Có bị lỗi không?
Không. Trong 100 lần tung, một chuỗi từ bảy trở lên xảy ra khoảng 54% số lần, và chuỗi dài nhất trung bình khoảng bảy. Các chuỗi chỉ trông đáng ngờ vì người ta kỳ vọng ngẫu nhiên nghĩa là xen kẽ đều đặn.
Hoạt ảnh hay cách tôi nhấn có ảnh hưởng kết quả không?
Không. Mặt được chọn trước khi đồng xu bắt đầu xoay, nên hoạt ảnh chỉ là trang trí. Giữ nút, click nhanh hơn hay tải lại giữa lúc xoay không thay đổi gì cả.
Có thể dùng nó để quyết định phe trong một trận đấu thật không?
Với các trận chơi thân, scrim và phòng cộng đồng thì hoàn hảo — cả hai đội trưởng cùng nhìn một màn hình. Với trận đấu chính thức, hãy dùng bất cứ điều gì luật game hoặc giải đấu quy định, ví dụ round dao trong CS2.
Kết quả của tôi có được lưu không?
Không. Bộ đếm và lịch sử chỉ sống trên trang này. Tải lại hoặc nhấn Reset là chúng biến mất, không có gì được lưu trên server.