Diskuze: Vytvoření náhodného generátoru čísel v C++
Zobrazeno 4 zpráv z 4.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
funkci srand
zavolej jen jednou na začátku programu. Potom po
každém volání rand()
vypadne jiné číslo.
Generátor nastavíš do výchozí polohy příkazem seed(parametr).
Kdyby jsi chtěl jít hlouběji, tak generovat náhodná čísla umí i sám Intel procesor. Příklad v x64 asm ve Visual Studiu 2017:
RdRand100 PROC
DB 048h, 0fh, 0c7h, 0f2h ; RDRAND RDX
mov rax, rdx ; 64 bit náhodné číslo je v RDX
xor rdx, rdx
mov r11, 100
div r11 ; Podělíme RDX:RAX 100
inc rdx ; Přičteme jedničku, abychom ošetřili stav když je zbytek po dělení = 0
mov rax, rdx ; Zbytek po dělení (číslo 1-100) do RAX
ret
RdRand100 ENDP
Zobrazeno 4 zpráv z 4.