Trình tạo số ngẫu nhiên
Tạo số nguyên ngẫu nhiên theo chuẩn mật mã — tùy chỉnh khoảng giá trị, số lượng, chỉ lấy giá trị duy nhất và xuất ở dạng thập phân / nhị phân / bát phân / thập lục phân.
Cách dùng
- 1 Thiết lập Min, Max và Count.
- 2 Tùy chọn bật Unique values để lấy mẫu không hoàn lại (không trùng lặp).
- 3 Chọn hệ cơ số (thập phân / nhị phân / bát phân / thập lục phân) và ký tự phân tách (separator).
Vì sao dùng công cụ này
- Bảo mật theo chuẩn mật mã — dùng Web Crypto API, không dùng Math.random().
- Chế độ Unique dùng phương pháp rejection sampling — phân bố đều trên toàn khoảng giá trị.
- Xuất kết quả ở 4 hệ cơ số — dán thẳng vào code của bạn.
- Hoàn toàn phía client — các số của bạn không bao giờ rời khỏi trình duyệt.
Câu hỏi thường gặp
Các số này ngẫu nhiên như thế nào?
Chúng được tạo ra từ <code class="font-mono text-xs">crypto.getRandomValues()</code> với phương pháp lấy mẫu đều không thiên lệch — hiện tượng modulo-bias được loại bỏ ngay khi phát sinh.
Số lượng tối đa là bao nhiêu?
Tối đa 10.000 số mỗi lần nhấn. Với chế độ Unique, số lượng (count) phải ≤ kích thước khoảng giá trị (range).
Vì sao cho phép nhập số âm?
Min và Max là số nguyên có dấu — bạn có thể dùng bất kỳ khoảng số nguyên nào.
Trình tạo số ngẫu nhiên là gì?
Trình tạo số ngẫu nhiên (Random Number Generator) là công cụ tạo ra các số nguyên ngẫu nhiên ngay trên trình duyệt, sử dụng nguồn ngẫu nhiên mạnh theo chuẩn mật mã. Công cụ cho phép người dùng thiết lập khoảng giá trị và số lượng, giới hạn kết quả chỉ gồm các giá trị duy nhất, và hiển thị kết quả ở dạng thập phân, nhị phân, bát phân hoặc thập lục phân. Toàn bộ quá trình tạo số diễn ra hoàn toàn phía client, không cần đăng ký và không có sự tham gia của server.
Tính năng
Tính ngẫu nhiên bảo mật mật mã học
Sử dụng crypto.getRandomValues() để lấy 64 bit cho mỗi giá trị ứng viên và loại bỏ các giá trị vượt quá bội số lớn nhất của khoảng, tránh hiện tượng thiên lệch modulo mà cách tiếp cận Math.random() * range đơn giản có thể gây ra.
Xuất định dạng thập phân, nhị phân, bát phân hoặc thập lục phân
Mỗi số nguyên được tạo có thể định dạng theo cơ số 10, cơ số 2 (tiền tố 0b), cơ số 8 (tiền tố 0o), hoặc cơ số 16 (tiền tố 0x, chữ số viết hoa).
Chế độ chỉ lấy giá trị duy nhất
Ngăn các giá trị trùng lặp xuất hiện trong kết quả. Với khoảng giá trị lên đến 100.000, công cụ dùng thuật toán xáo trộn Fisher-Yates trong bộ nhớ; với khoảng lớn hơn, hệ thống chuyển sang reservoir sampling với Set cho đến khi thu thập đủ số lượng giá trị phân biệt yêu cầu.
Số lượng và ký tự phân tách có thể tùy chỉnh
Tạo từ 1 đến 10.000 số mỗi lần chạy, nối bằng ký tự xuống dòng, dấu phẩy hoặc dấu cách, sẵn sàng để sao chép trực tiếp từ ô kết quả.
Ví dụ
Input
min=1, max=100, count=10, unique=true, base=10, separator=comma
Output
7, 42, 88, 15, 63, 29, 91, 3, 56, 74 (10 unique integers between 1 and 100, comma-separated)
Trường hợp sử dụng
-
1
Rút số vé xổ số và quay thưởng
Tạo một tập hợp số vé trúng thưởng duy nhất trong một khoảng xác định mà không bị trùng lặp.
-
2
Lấy mẫu và tạo dữ liệu kiểm thử
Tạo hàng loạt số nguyên ngẫu nhiên ở dạng thập phân hoặc thập lục phân để khởi tạo dữ liệu kiểm thử, ID phục vụ kiểm tra tải, hoặc lấy mẫu thống kê.
-
3
Trò chơi và công cụ board game
Tung xúc xắc trong các khoảng (ví dụ 1-6, 1-20) nhiều lần liên tiếp hoặc rút một số lượng cố định các số không lặp lại cho các trò chơi kiểu xổ số.
Tạo các số nguyên ngẫu nhiên trong khoảng [min, max] do người dùng thiết lập bằng Web Crypto API của trình duyệt (crypto.getRandomValues) kết hợp phương pháp rejection sampling để đảm bảo phân phối đều không thiên lệch, thay vì dùng Math.random(). Công cụ hỗ trợ tối đa 10.000 giá trị mỗi lần chạy, chế độ tùy chọn chỉ lấy giá trị duy nhất (unique-only) sử dụng thuật toán xáo trộn Fisher-Yates cho khoảng giá trị lên đến 100.000, hoặc reservoir sampling qua Set cho các khoảng lớn hơn, cùng khả năng định dạng thập phân, nhị phân, bát phân hoặc thập lục phân. Toàn bộ quá trình chạy phía client bằng JavaScript — không có số nào được gửi lên máy chủ.
- Danh mục
- Sáng tạo
- Giá
- Miễn phí
- Quyền riêng tư
- Chạy trên trình duyệt
- Đăng ký
- Không cần
Tài liệu tham khảo
- Crypto: phương thức getRandomValues() — MDN Web Docs
- Web Crypto API — MDN Web Docs
- BigInt — MDN Web Docs
Quyền riêng tư
Dữ liệu của bạn không bao giờ rời khỏi trình duyệt trừ khi được nêu rõ. Trình tạo số ngẫu nhiên chạy hoàn toàn phía client — không tải lên máy chủ, không ghi log, không theo dõi dữ liệu bạn nhập.
Công cụ liên quan
Trình tải Thumbnail YouTube
Tải ảnh thumbnail YouTube ở mọi độ phân giải có sẵn. Chỉ cần dán URL video.
Mở công cụXem trước Open Graph
Kiểm tra URL của bạn hiển thị như thế nào khi chia sẻ trên mạng xã hội. Xem trước thẻ chia sẻ trên Facebook, Twitter, LinkedIn và Slack.
Mở công cụĐếm từ & ký tự
Đếm từ, ký tự, câu và đoạn văn. Thời gian đọc, thời gian nói và các từ khóa nổi bật — tức thì.
Mở công cụTrình tạo Lorem Ipsum
Tạo văn bản giữ chỗ Lorem Ipsum — theo đoạn văn, câu, hoặc từ. Tùy chọn bọc HTML.
Mở công cụXây dựng, chia sẻ và phát triển trên Zerethon Social
Đăng ký miễn phí. Kiếm điểm, sưu tầm thành tựu và kết nối với nhà sáng tạo khắp thế giới.