random number

Üdvözlöm, Ön a random number szó jelentését keresi. A DICTIOUS-ban nem csak a random number szó összes szótári jelentését megtalálod, hanem megismerheted az etimológiáját, a jellemzőit és azt is, hogyan kell a random number szót egyes és többes számban mondani. Minden, amit a random number szóról tudni kell, itt található. A random number szó meghatározása segít abban, hogy pontosabban és helyesebben fogalmazz, amikor beszélsz vagy írsz. Arandom number és más szavak definíciójának ismerete gazdagítja a szókincsedet, és több és jobb nyelvi forráshoz juttat.

Főnév

random number (tsz. random numbers)

  1. (informatika) A véletlenszám egy olyan szám, amelyet nem determinisztikus, azaz kiszámíthatatlan módon választanak ki egy adott tartományból. Az informatikában véletlenszámokat sokféle célra használnak: szimulációk, kriptográfia, játékfejlesztés, mesterséges intelligencia és statisztikai elemzések során is alapvető fontosságúak.



🧮 Típusai

1. Igazi véletlenszám (TRNG – True Random Number Generator)

  • Fizikai forrásból származik (pl. rádiózaj, fotonok, hőingadozás).
  • Nem ismételhető.
  • Használatos kriptográfiában, amikor tökéletes entropiára van szükség.

2. Ál-véletlenszám (PRNG – Pseudo Random Number Generator)

  • Algoritmikus úton generált számok.
  • Teljesen meghatározott, ha ismerjük a kezdő értéket (seed).
  • Gyors, de hosszú távon ismétlődhet.



🔢 Példa C++-ban (C++11)

#include <iostream>
#include <random>

int main() {
    std::random_device rd;                      // Valós véletlen seed
    std::mt19937 gen(rd());                     // Mersenne Twister PRNG
    std::uniform_int_distribution<> dist(1, 100); // 1-től 100-ig

    std::cout << "Random number: " << dist(gen) << std::endl;
    return 0;
}

📌 Mit csinál ez?

  • random_device → valós véletlenszámot ad (ha elérhető).
  • mt19937 → egy determinisztikus, de nagyon jó minőségű PRNG.
  • uniform_int_distribution → egyenletes eloszlású véletlen egész számokat ad egy megadott tartományból.



📐 Eloszlások (Distributions)

Véletlenszámokat nemcsak egyenletesen lehet elosztani:

Eloszlás típus Leírás
uniform_int_distribution Egyenletes eloszlás egész számokra
uniform_real_distribution Egyenletes lebegőpontos értékek
normal_distribution Normális (Gauss) eloszlás
bernoulli_distribution Igaz/hamis érték, adott valószínűséggel
poisson_distribution Poisson-folyamat modellezéséhez



🧠 Használati területek

  • Játékok: dobókocka, találati esély, véletlen események
  • Szimulációk: Monte Carlo-módszer
  • Kriptográfia: kulcsgenerálás, nonce, salt
  • AI/ML: kezdeti súlyok randomizálása, adatok szétosztása
  • Statisztika: mintavétel, permutációk



⚠️ Biztonsági megjegyzés

PRNG nem biztonságos kriptográfiai célokra (kiszámítható). Használj CSPRNG-t (Cryptographically Secure PRNG), pl. std::random_device vagy operációs rendszer API-ját (/dev/urandom, CryptGenRandom stb.).