Langsung ke konten utama

Generator Angka Acak gratis

Hasilkan angka acak dalam rentang apa pun, buat daftar angka unik, atau lempar dadu. Menggunakan keacakan yang aman secara kriptografis.

Berfungsi offline setelah dimuat

πŸ”’ Setiap angka menggunakan keacakan kriptografi aman browser Anda (crypto.getRandomValues) β€” benar-benar adil, bukan Math.random() yang dapat diprediksi. Tidak ada yang dikirim. Meski begitu, jangan gunakan angka-angka ini untuk pembuatan kunci kriptografi, token keamanan, atau aplikasi lotere/perjudian yang diatur, yang memerlukan sumber keacakan tersertifikasi perangkat keras yang telah diaudit.

Perlu memilih pemenang dari daftar nama, atau melempar koin? Gunakan alat Lempar Koin, Roda Putar dan Pemilih Daftar β†’

Penggunaan umum

  • Buat Nomor UndianPilih nomor undian acak untuk Powerball, Mega Millions, EuroMillions, dan undian lainnya.
  • Pilih Pemenang Acak untuk HadiahPilih pemenang acak secara adil dari daftar entri yang diberi nomor untuk kontes dan hadiah.
  • Lempar Dadu untuk Permainan MejaLempar kombinasi dadu apa pun - d4, d6, d8, d10, d12, d20, d100 - untuk D&D dan permainan RPG meja.
  • Pengambilan Sampel Acak untuk PenelitianHasilkan sampel acak, tetapkan ID acak, atau pilih subset acak dari kumpulan data yang diberi nomor.
  • Hasilkan Nomor Acak Data PengujianBuat daftar besar angka acak untuk menguji algoritma, mengisi database, dan sistem pengujian stres.

Cara kerja

Setiap angka yang dihasilkan alat ini berasal dari crypto.getRandomValues β€” sumber acak aman-kriptografis browser, yang sama digunakan untuk pembuatan kunci TLS. Algoritma rejection-sampling tulisan tangan berada di atasnya untuk menghilangkan bias modulo yang mengganggu implementasi Math.random() % rentang sederhana, termasuk rentang lebih lebar dari 2^32 via aritmetika BigInt.

  1. 1
    Atur rentang dan mode Anda
    Pilih antara angka tunggal, daftar batch (hingga 1000), atau dadu polihedral (d4 hingga d100). Untuk daftar, Anda juga bisa mensyaratkan nilai unik dan opsional mengurutkan keluaran menaik.
  2. 2
    crypto.getRandomValues menarik entropi mentah
    Setiap angka ditarik dari Uint32Array (atau BigUint64Array untuk rentang lebih lebar dari 2^32) yang diisi oleh RNG kriptografis browser β€” bukan Math.random(). Rejection sampling kemudian membuang nilai yang akan mencondongkan distribusi, sehingga setiap bilangan bulat dalam rentang Anda memiliki probabilitas yang persis sama.
  3. 3
    Mode nilai-unik menggunakan Fisher-Yates atau pelacakan rejection
    Saat mode unik aktif dan rentang muat dalam memori (hingga 100.000 nilai), alat ini mewujudkan seluruh kumpulan dan mengocoknya dengan Fisher-Yates. Untuk rentang yang sangat besar, alat ini malah menarik nilai satu per satu, melewati pengulangan β€” menghindari biaya memori untuk membangun array bermiliar-entri.
  4. 4
    Hasil mendarat dengan umpan balik teranimasi dan tetap dalam riwayat sesi
    Nilai akhir beranimasi ke tempatnya (gulungan mesin-slot untuk angka, dadu bergulir untuk mode dadu) menggunakan requestAnimationFrame, lalu muncul dalam log riwayat yang dapat digulir yang bisa Anda salin kapan saja. Tidak ada yang meninggalkan browser Anda.

Alat terkait

Pertanyaan yang sering diajukan