Çevrimiçi ve Ücretsiz Rastgele Sayı Üreteci
Rastgele Sayı Üreteci Nasıl Çalışır?
Üretecimiz, Web Crypto API’den (crypto.getRandomValues()) kriptografik olarak güvenli rastgele sayılar kullanır. Güvenlik veya istatistiksel amaçlar için uygun olmayan sözde rastgele bir yapıya sahip olan Math.random()’ın aksine, crypto.getRandomValues() sistem kaynağından gerçek entropi sağlar.
Tüm oluşturma işlemleri doğrudan tarayıcınızda gerçekleşir – hiçbir sayı sunucuya gönderilmez.
Üreteci Özellikleri
Temel Ayarlar
- Minimum ve Maksimum – herhangi bir tam sayı veya ondalık aralık belirleyin
- Sayı Adedi – aynı anda 1 ila 10.000 sayı oluşturun
- Tekrarlar – sayı tekrarlarını devre dışı bırakın (çekilişler için uygundur)
- Sıralama – sonuçları en küçükten en büyüğe doğru sıralayın
- Ondalık Sayılar – ondalık sayılara geçin ve hassasiyeti ayarlayın
Hızlı Ön Ayarlar
| Ön Ayar | Aralık | Adet | Kullanım |
|---|---|---|---|
| 🎲 Zar | 1–6 | 1 | Oyunlar, karar verme |
| 🪙 Madeni Para | 0–1 | 1 | Tura veya Yazı |
| 🎰 Piyango | 1–49 | 6 | Piyango Simülasyonu |
| 💯 1–100 | 1–100 | 1 | Genel kullanım |
Rastgele Sayılar Nerelerde Kullanılır?
Oyunlar ve Eğlence
- Masa Oyunları – zar atma, sıra çekilişi
- Karar Verme – ne seçeceğinizi bilemediğinizde
- Quizler ve Yarışmalar – rastgele soru veya kazanan seçimi
- RPG Oyunları – karakter özelliklerini oluşturma
İstatistik ve Bilim
- Örnekleme – popülasyondan rastgele örnek seçimi
- A/B Testi – gruplara rastgele dağılım
- Monte Carlo Simülasyonu – olasılık tahminleri
- Bootstrapping – yeniden örnekleme için istatistiksel yöntem
Bilişim ve Geliştirme
- Test Verileri – test değerleri oluşturma
- Sinir ağlarının ağırlıklarını başlatma
- Rastgele Kimlikler – UUID çok büyük olduğunda
- Oyunlaştırma – rastgele ödüller, ganimet kutusu mekanikleri
Gerçek ve Sözde Rastgele Sayılar
Math.random() | crypto.getRandomValues() | |
|---|---|---|
| Tip | Sözde Rastgele | Kriptografik Olarak Güvenli |
| Entropi Kaynağı | Algoritma tohumu | Sistem CSPRNG’si |
| Hız | Çok hızlı | Hızlı |
| Tahmin Edilebilir mi? | Potansiyel olarak evet | Hayır |
| Güvenlik için uygun mu? | Hayır | Evet |
| İstatistik için uygun mu? | Değişir | Evet |
Üretecimiz her zaman kriptografik olarak güvenli varyantı kullanır, bu nedenle sonuçlar simülasyonlar, istatistiksel hesaplamalar veya çekilişler için de uygundur.
Tekrarsız Çekiliş
“Tekrarlara izin verme” seçeneği işaretlendiğinde, üreteç aralıktaki her sayının sonuçta en fazla bir kez görünmesini sağlar. Bu, aşağıdakiler için idealdir:
- Çekilişler – aynı kişinin iki kez kazanamayacağı şekilde kazananları seçme
- Permütasyonlar – elemanların rastgele yeniden düzenlenmesi
- Bingo – tekrarsız sayı çekimi
- Piyango – 1-49 aralığından 6 farklı sayı
İstenen sayı adedi aralık boyutunu aşarsa, üreteç bir hata mesajı görüntüler.
Sonuçları Dışa Aktarma
Oluşturulan sayılar iki formatta kopyalanabilir:
- Virgülle ayrılmış –
12, 45, 7, 33– tablolara (Excel, Google E-Tablolar) yapıştırmak için uygun - Satır satır – her sayı ayrı bir satırda – metin dosyaları veya komut dosyası işleme için uygun
Kendi Kodunuzda Rastgele Sayılar Nasıl Oluşturulur?
JavaScript / TypeScript
// [min, max] aralığında kriptografik olarak güvenli rastgele tam sayı
function randomInt(min, max) {
const range = max - min + 1;
const arr = new Uint32Array(1);
crypto.getRandomValues(arr);
return min + (arr[0] % range);
}
// Sözde rastgele (hızlı, ancak güvenli değil)
const n = Math.floor(Math.random() * (max - min + 1)) + min;
Python
import random
import secrets
# Kriptografik olarak güvenli
n = secrets.randbelow(max - min + 1) + min
# Sözde rastgele (standart kütüphane)
n = random.randint(min, max)
# Tekrarsız
sample = random.sample(range(min, max + 1), count)
PHP
// Kriptografik olarak güvenli (PHP 7+)
$n = random_int($min, $max);
// Sözde rastgele (eski yaklaşım)
$n = rand($min, $max);
Sıkça Sorulan Sorular (SSS)
Sonuç gerçekten rastgele mi?
Evet. Tarayıcıda uygulanan kriptografik olarak güvenli sözde rastgele sayı üreteci (CSPRNG) olancrypto.getRandomValues() kullanıyoruz. Sonuçlar istatistiksel olarak eşit dağılmıştır ve tahmin edilemezdir.