# Generator angka acak

> Generator angka acak gratis dengan penarikan aman atau seeded, enam distribusi, bobot, notasi dadu, dan statistik langsung. 100% di browser Anda.

URL: https://acrafto.com/id/generator-angka-acak-online/  
Updated: 2026-08-28

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

## Bagaimana Cara Kerja Generator Angka Acak?

Generator ini memberi Anda **dua sumber keacakan**, dan Anda yang memilih mana yang cocok untuk kebutuhan Anda.

**Acak aman** menarik entropi dari sistem operasi Anda melalui Web Crypto API (`crypto.getRandomValues()`). Hasilnya tidak dapat diprediksi dan tidak dapat diulang — pilihan yang tepat untuk undian sungguhan di mana tidak ada yang boleh menebak hasilnya sebelumnya.

**Seeded** mengubah teks apa pun yang Anda ketik menjadi kondisi awal untuk generator deterministik (xoshiro128\*\*). Seed yang sama selalu menghasilkan angka yang sama, sehingga siapa pun dapat mengulang undian Anda dan memastikan hasilnya sesuai dengan yang Anda klaim.

Keduanya berjalan **sepenuhnya di browser Anda**. Tidak ada angka yang pernah dikirim ke server.

### Tanpa bias modulo

Sebagian besar generator sederhana memetakan nilai acak 32-bit ke rentang Anda dengan `value % range`. Jika rentang tidak habis membagi 2³² secara merata, angka-angka terkecil sedikit lebih sering muncul dibanding yang lain. Dalam ribuan penarikan, bias ini dapat terukur.

Generator ini justru menggunakan **rejection sampling**: nilai yang jatuh ke bagian ekor yang tidak merata dibuang dan ditarik ulang. Setiap angka dalam rentang Anda memiliki peluang yang benar-benar sama. Anda bisa memverifikasinya sendiri dengan uji keseragaman bawaan.

## Apa yang bisa dilakukan generator ini

### Rentang

- **Minimum dan maksimum** — rentang bilangan bulat atau desimal apa pun, termasuk nilai negatif
- **Jumlah angka** — dari 1 hingga **1.000.000** dalam satu penarikan
- **Tanpa pengulangan** — setiap angka muncul paling banyak satu kali, seperti undian sungguhan
- **Urutkan** — urutan penarikan, menaik, atau menurun; pengurutan tidak pernah memengaruhi keacakan
- **Kelipatan** — batasi hasil hanya pada kelipatan suatu nilai, misalnya hanya 0, 5, 10, 15 yang muncul
- **Kecualikan angka** — daftar nilai yang tidak boleh pernah ditarik

### Mode

- **Sumber keacakan** — aman (Web Crypto) atau seeded (dapat direproduksi)
- **Seed** — teks apa pun; seed yang sama selalu mengulang penarikan yang sama
- **Distribusi** — uniform, normal (Gaussian), eksponensial, Poisson, triangular, binomial
- **Bobot** — beri angka tertentu peluang lebih tinggi, ditulis sebagai `number:weight`
- **Notasi dadu** — `3d6+2`, `d20`, `2d20kh1` untuk advantage, `4d6dl1` untuk rolling stats

### Output

- **Pemisah** — koma, spasi, titik koma, tab, baris baru, atau teks apa pun yang Anda ketik
- **Sistem bilangan** — desimal, biner, oktal, heksadesimal, atau basis 36
- **Tambahkan nol di depan** — ubah 7 menjadi 007 untuk nomor tiket atau ID
- **Awalan dan akhiran** — bungkus setiap angka dengan teks tetap
- **Template** — `{n}` adalah angkanya, `{i}` posisinya, sehingga `user{n}` menjadi `user42`
- **Salin sebagai** — teks biasa, CSV, JSON, atau tabel Markdown

### Statistik

Setiap penarikan dirangkum secara langsung: jumlah, rata-rata, median, terendah, tertinggi, deviasi standar, ditambah berapa banyak hasil yang genap, ganjil, atau prima. Histogram menampilkan bentuk distribusinya, dan **uji chi-square** memberi tahu Anda apakah hasilnya benar-benar sesuai dengan distribusi uniform.

### Riwayat

50 penarikan terakhir disimpan di browser Anda, lengkap dengan pengaturan yang menghasilkannya — satu klik memulihkan salah satunya. Konfigurasi yang sering Anda gunakan dapat disimpan sebagai preset bernama, dan semuanya dapat diekspor ke file JSON yang bisa Anda impor di perangkat lain. Tidak ada yang disimpan di mana pun selain di browser ini.

### Keyboard

Tekan **Space** atau **R** untuk menarik ulang tanpa perlu menyentuh mouse.

## Preset cepat

| Preset | Rentang | Jumlah | Penggunaan |
| --- | --- | --- | --- |
| 🎲 Dadu | 1–6 | 1 | Permainan papan, mengambil keputusan |
| 🪙 Koin | 0–1 | 1 | Gambar atau angka |
| 🎰 Lotre | 1–49 | 6 | Unik, terurut, seperti undian sungguhan |
| 💯 1–100 | 1–100 | 1 | Persentase, pembagian A/B |
| 🔢 PIN | 0–9 | 4 | Empat digit, pengulangan diperbolehkan |

## Penarikan yang dapat direproduksi

Mode seeded ada untuk saat-saat ketika “percayalah, ini acak” saja tidak cukup.

Pilih seed yang bisa disepakati semua orang terlebih dahulu — sebuah tanggal, tagar, harga penutupan dari sesuatu yang publik — dan umumkan sebelum Anda menarik. Siapa pun kemudian dapat mengetik seed yang sama dengan pengaturan yang sama dan mendapatkan hasil yang identik. Anda tidak membuktikan bahwa angkanya tidak dapat diprediksi; Anda membuktikan bahwa Anda tidak menarik ulang berkali-kali sampai mendapat jawaban yang Anda suka.

Ini juga cara membuat keacakan dapat diulang dalam pekerjaan yang perlu diperiksa: rencana sampling yang bisa dijalankan ulang oleh kolega, sekumpulan fixture uji yang tetap stabil di seluruh test suite, atau latihan kelas di mana setiap siswa mendapatkan data “acak” yang sama.

## Memilih distribusi

**Uniform** memberi setiap angka dalam rentang peluang yang sama. Inilah yang biasanya dimaksud orang dengan “acak”, dan ini adalah pilihan default.

Distribusi lainnya mengelompokkan hasil di sekitar suatu nilai, seperti yang cenderung terjadi pada besaran di dunia nyata:

- **Normal (Gaussian)** — tinggi badan, kesalahan pengukuran, nilai ujian. Atur rata-rata dan deviasi standar.
- **Eksponensial** — waktu tunggu antar kejadian yang independen.
- **Poisson** — jumlah kejadian dalam interval tetap: kedatangan per jam, cacat per batch.
- **Triangular** — saat Anda tahu nilai minimum, maksimum, dan yang paling mungkin tapi tidak lebih dari itu. Umum digunakan dalam estimasi proyek.
- **Binomial** — jumlah keberhasilan dari sejumlah percobaan tetap dengan probabilitas tetap.

Setiap distribusi dibatasi pada rentang yang Anda tetapkan, sehingga ekor panjang distribusi Gaussian tidak bisa keluar dari minimum dan maksimum Anda.

## Di mana angka acak digunakan

### Permainan dan hiburan

- **Permainan papan** — lemparan dadu, urutan giliran
- **RPG meja** — `4d6dl1` untuk skor kemampuan, `2d20kh1` untuk advantage
- **Giveaway** — memilih pemenang, dengan seed agar peserta dapat memverifikasinya
- **Kuis** — urutan pertanyaan acak

### Statistik dan sains

- **Sampling** — menarik sampel dari populasi tanpa pengulangan
- **Pengujian A/B** — menempatkan peserta ke dalam kelompok
- **Simulasi Monte Carlo** — mengestimasi probabilitas melalui pengulangan
- **Bootstrapping** — resampling untuk mengestimasi ketidakpastian

### Pengembangan

- **Data uji** — satu juta nilai, dihasilkan di latar belakang agar halaman tetap responsif
- **Fixture** — seeded, sehingga tes yang gagal, gagal dengan cara yang sama setiap kali
- **ID acak** — dengan padding, awalan, atau template
- **Load testing** — pengenal bertemplate seperti `user{n}@example.com`

## Angka acak sejati vs. pseudorandom

|  | `Math.random()` | `crypto.getRandomValues()` | Seeded (xoshiro128\*\*) |
| --- | --- | --- | --- |
| **Tipe** | Pseudorandom | Aman secara kriptografis | Pseudorandom, deterministik |
| **Sumber entropi** | Seed pilihan engine | CSPRNG sistem | Teks seed Anda |
| **Dapat diprediksi?** | Berpotensi | Tidak | Ya, secara desain |
| **Dapat diulang?** | Tidak | Tidak | Selalu |
| **Cocok untuk keamanan** | Tidak | Ya | Tidak |
| **Cocok untuk statistik** | Tergantung | Ya | Ya |
| **Cocok untuk undian yang dapat diverifikasi** | Tidak | Tidak | Ya |

`Math.random()` tidak digunakan sama sekali di alat ini.

## Penarikan tanpa pengulangan

Dengan **Tanpa pengulangan** diaktifkan, setiap angka dalam rentang muncul paling banyak satu kali. Ideal untuk:

- **Giveaway** — tidak ada yang bisa menang dua kali
- **Permutasi** — mengacak sekumpulan item
- **Bingo** — memanggil angka yang tetap sudah dipanggil
- **Lotre** — enam angka berbeda dari 1 hingga 49

Penarikan menggunakan partial Fisher–Yates shuffle, sehingga meminta 6 angka dari satu juta sama cepatnya dengan meminta 6 dari 49 — tidak pernah melakukan loop berharap menghindari tabrakan. Jika Anda meminta angka unik lebih banyak daripada yang bisa disediakan rentang, generator akan memberi tahu Anda alih-alih macet.

## Mengekspor hasil

Salin angka sebagai teks biasa dengan pemisah apa pun yang Anda suka, sebagai **CSV** untuk spreadsheet, sebagai **JSON** untuk kode, atau sebagai **tabel Markdown** untuk dokumentasi. Penarikan yang sangat besar tetap tersimpan penuh di memori dan disalin secara utuh, meskipun hanya beberapa ribu pertama yang ditampilkan di layar.

## Menghasilkan angka acak di kode Anda sendiri

### JavaScript / TypeScript

```
// Bilangan bulat aman secara kriptografis dalam [min, max], tanpa bias modulo.
// `value % range` yang naif menguntungkan angka kecil saat rentang tidak
// membagi 2**32 secara merata - jadi kita menolak nilai di ekor yang tidak merata.
function randomInt(min, max) {
  const range = max - min + 1;
  const limit = Math.floor(0x100000000 / range) * range;
  const arr = new Uint32Array(1);
  let value;
  do {
    crypto.getRandomValues(arr);
    value = arr[0];
  } while (value >= limit);
  return min + (value % range);
}
```

### Python

```
import random
import secrets

# Aman secara kriptografis, tanpa bias modulo
n = secrets.randbelow(max - min + 1) + min

# Dapat direproduksi: seed yang sama selalu menghasilkan urutan yang sama
rng = random.Random('my-seed')
n = rng.randint(min, max)

# Tanpa pengulangan
sample = random.sample(range(min, max + 1), count)
```

### PHP

```
// Aman secara kriptografis (PHP 7+), tanpa bias modulo
$n = random_int($min, $max);

// Dapat direproduksi
mt_srand(crc32('my-seed'));
$n = mt_rand($min, $max);
```

## Pertanyaan yang sering diajukan (FAQ)

### Apakah hasilnya benar-benar acak?

Dalam mode aman, ya. Hasilnya berasal dari `crypto.getRandomValues()`, generator yang aman secara kriptografis dan diberi entropi dari pool entropi sistem operasi Anda. Hasilnya terdistribusi secara uniform dan tidak dapat diprediksi. Mode seeded sengaja dibuat sebaliknya: ia dapat direproduksi, dan itulah tujuannya.

### Berapa banyak angka yang bisa saya hasilkan sekaligus?

Hingga 1.000.000. Penarikan di atas 50.000 dihitung dalam background worker agar halaman tetap responsif, dan layar menampilkan 2.000 angka pertama beserta jumlah sisanya — menyalin tetap memberi Anda semuanya.

### Bisakah saya menghasilkan angka negatif?

Ya. Atur minimum ke nilai negatif. Seluruh rentang angka JavaScript berfungsi, termasuk rentang negatif di kedua ujungnya.

### Apakah pengurutan memengaruhi keacakan?

Tidak. Angka ditarik terlebih dahulu lalu diurutkan setelahnya. Pengurutan hanya mengubah urutan tampilannya.

### Apakah seed yang sama akan memberikan angka yang sama besok?

Ya, dan juga di perangkat atau browser lain mana pun. Generator seeded bersifat sepenuhnya deterministik dan hanya bergantung pada seed dan pengaturan Anda.

### Apa yang diberitahukan oleh uji keseragaman?

Uji ini menjalankan uji chi-square yang membandingkan seberapa sering setiap angka benar-benar muncul dengan seberapa sering seharusnya muncul. Jika nilai statistiknya tetap di bawah nilai kritis, hasilnya konsisten dengan distribusi uniform. Diperlukan rentang yang cukup sempit dan penarikan yang cukup banyak — minimal lima per nilai yang mungkin — agar hasilnya bermakna.

### Bagaimana cara kerja bobot?

Tulis sebagai pasangan `number:weight`, misalnya `1:5, 2:1, 3:1`. Di sini 1 lima kali lebih mungkin muncul dibanding 2 atau 3. Angka yang tidak Anda cantumkan mendapat bobot nol dan tidak akan pernah ditarik.

### Notasi dadu apa saja yang didukung?

`3d6` melempar tiga dadu bermata enam. Tambahkan modifier dengan `3d6+2`. Simpan atau buang dadu dengan `kh`, `kl`, `dh`, `dl` — sehingga `2d20kh1` menyimpan nilai tertinggi dari dua d20 (advantage) dan `4d6dl1` membuang nilai terendah dari empat d6.

### Apakah riwayat saya disimpan di suatu tempat?

Hanya di browser ini, dalam local storage. Riwayat tidak pernah dikirim ke server, tidak pernah disinkronkan ke perangkat lain, dan akan hilang jika Anda menghapus data situs. Ekspor ke JSON jika Anda ingin menyimpan atau memindahkannya.

## Other languages

- Čeština (cs): [Generátor náhodných čísel](https://acrafto.com/cs/generator-nahodnych-cisel/) ([Markdown](https://acrafto.com/cs/generator-nahodnych-cisel/index.md))
- Slovenčina (sk): [Generátor náhodných čísel](https://acrafto.com/sk/generator-nahodnych-cisel/) ([Markdown](https://acrafto.com/sk/generator-nahodnych-cisel/index.md))
- English (en): [Random Number Generator](https://acrafto.com/en/online-random-number-generator/) ([Markdown](https://acrafto.com/en/online-random-number-generator/index.md))
- Deutsch (de): [Zufallszahlen Generator](https://acrafto.com/de/zufallszahlen-generator-online/) ([Markdown](https://acrafto.com/de/zufallszahlen-generator-online/index.md))
- Français (fr): [Générateur de nombres aléatoires](https://acrafto.com/fr/generateur-nombres-aleatoires/) ([Markdown](https://acrafto.com/fr/generateur-nombres-aleatoires/index.md))
- Español (es): [Generador de números aleatorios](https://acrafto.com/es/generador-numeros-aleatorios-online/) ([Markdown](https://acrafto.com/es/generador-numeros-aleatorios-online/index.md))
- Italiano (it): [Generatore di numeri casuali](https://acrafto.com/it/generatore-numeri-casuali/) ([Markdown](https://acrafto.com/it/generatore-numeri-casuali/index.md))
- Português (pt): [Gerador de números aleatórios](https://acrafto.com/pt/gerador-numeros-aleatorios/) ([Markdown](https://acrafto.com/pt/gerador-numeros-aleatorios/index.md))
- Nederlands (nl): [Random getal generator](https://acrafto.com/nl/generator-willekeurige-getallen/) ([Markdown](https://acrafto.com/nl/generator-willekeurige-getallen/index.md))
- Polski (pl): [Generator liczb losowych](https://acrafto.com/pl/generator-liczb-losowych-online/) ([Markdown](https://acrafto.com/pl/generator-liczb-losowych-online/index.md))
- Română (ro): [Generator numere aleatoare](https://acrafto.com/ro/generator-numere-aleatoare-online/) ([Markdown](https://acrafto.com/ro/generator-numere-aleatoare-online/index.md))
- Magyar (hu): [Véletlenszám generátor](https://acrafto.com/hu/veletlen-szam-generator/) ([Markdown](https://acrafto.com/hu/veletlen-szam-generator/index.md))
- Ελληνικά (el): [Γεννήτρια τυχαίων αριθμών](https://acrafto.com/el/generator-tychaion-arithmon-online/) ([Markdown](https://acrafto.com/el/generator-tychaion-arithmon-online/index.md))
- Български (bg): [Генератор на случайни числа](https://acrafto.com/bg/generator-sluchayni-chisla/) ([Markdown](https://acrafto.com/bg/generator-sluchayni-chisla/index.md))
- Hrvatski (hr): [Generator slučajnih brojeva](https://acrafto.com/hr/generator-nasumicnih-brojeva/) ([Markdown](https://acrafto.com/hr/generator-nasumicnih-brojeva/index.md))
- Slovenščina (sl): [Generator naključnih števil](https://acrafto.com/sl/generator-nakljucnih-stevil/) ([Markdown](https://acrafto.com/sl/generator-nakljucnih-stevil/index.md))
- Eesti (et): [Juhuslike arvude generaator](https://acrafto.com/et/juhuslike-arvude-generaator/) ([Markdown](https://acrafto.com/et/juhuslike-arvude-generaator/index.md))
- Latviešu (lv): [Gadījuma skaitļu ģenerators](https://acrafto.com/lv/gadijuma-skaitlu-generators/) ([Markdown](https://acrafto.com/lv/gadijuma-skaitlu-generators/index.md))
- Lietuvių (lt): [Atsitiktinių skaičių generatorius](https://acrafto.com/lt/atsitiktiniu-skaiciu-generatorius/) ([Markdown](https://acrafto.com/lt/atsitiktiniu-skaiciu-generatorius/index.md))
- Svenska (sv): [Slumptalsgenerator](https://acrafto.com/sv/slumptalsgenerator/) ([Markdown](https://acrafto.com/sv/slumptalsgenerator/index.md))
- Dansk (da): [Tilfældighedsgenerator](https://acrafto.com/da/tilfaeldighedsgenerator-online/) ([Markdown](https://acrafto.com/da/tilfaeldighedsgenerator-online/index.md))
- Suomi (fi): [Satunnaislukugeneraattori](https://acrafto.com/fi/satunnaislukugeneraattori/) ([Markdown](https://acrafto.com/fi/satunnaislukugeneraattori/index.md))
- Norsk (no): [Tilfeldig tallgenerator](https://acrafto.com/no/tilfeldig-tallgenerator/) ([Markdown](https://acrafto.com/no/tilfeldig-tallgenerator/index.md))
- Українська (uk): [Генератор випадкових чисел](https://acrafto.com/uk/generator-vypadkovyh-chysel/) ([Markdown](https://acrafto.com/uk/generator-vypadkovyh-chysel/index.md))
- Русский (ru): [Генератор случайных чисел](https://acrafto.com/ru/generator-sluchajnyh-chisel/) ([Markdown](https://acrafto.com/ru/generator-sluchajnyh-chisel/index.md))
- Српски (sr): [Generator nasumičnih brojeva](https://acrafto.com/sr/generator-nasumicnih-brojeva/) ([Markdown](https://acrafto.com/sr/generator-nasumicnih-brojeva/index.md))
- Македонски (mk): [Генератор на случајни броеви](https://acrafto.com/mk/generator-slucajni-broevi/) ([Markdown](https://acrafto.com/mk/generator-slucajni-broevi/index.md))
- Bosanski (bs): [Generator nasumičnih brojeva](https://acrafto.com/bs/generator-nasumicnih-brojeva/) ([Markdown](https://acrafto.com/bs/generator-nasumicnih-brojeva/index.md))
- Shqip (sq): [Gjenerator numrash të rastësishëm](https://acrafto.com/sq/gjenerator-numrash-rastesishem/) ([Markdown](https://acrafto.com/sq/gjenerator-numrash-rastesishem/index.md))
- Türkçe (tr): [Rastgele sayı üretici](https://acrafto.com/tr/rastgele-sayi-uretici/) ([Markdown](https://acrafto.com/tr/rastgele-sayi-uretici/index.md))
- 日本語 (ja): [乱数生成ツール](https://acrafto.com/ja/ransu-generator/) ([Markdown](https://acrafto.com/ja/ransu-generator/index.md))
- 한국어 (ko): [랜덤 숫자 생성기](https://acrafto.com/ko/random-number-generator/) ([Markdown](https://acrafto.com/ko/random-number-generator/index.md))
- العربية (ar): [مولد أرقام عشوائية](https://acrafto.com/ar/random-number-generator/) ([Markdown](https://acrafto.com/ar/random-number-generator/index.md))
- हिन्दी (hi): [रैंडम नंबर जनरेटर](https://acrafto.com/hi/random-number-generator/) ([Markdown](https://acrafto.com/hi/random-number-generator/index.md))
- Tiếng Việt (vi): [Tạo số ngẫu nhiên](https://acrafto.com/vi/cong-cu-tao-so-ngau-nhien/) ([Markdown](https://acrafto.com/vi/cong-cu-tao-so-ngau-nhien/index.md))
- ไทย (th): [สุ่มตัวเลข](https://acrafto.com/th/random-number-generator/) ([Markdown](https://acrafto.com/th/random-number-generator/index.md))
- עברית (he): [מחולל מספרים אקראיים](https://acrafto.com/he/random-number-generator/) ([Markdown](https://acrafto.com/he/random-number-generator/index.md))
