Zdravim, skusil som si len tak nakodit generovanie nahodnych cisel, a robim to pod linuxom a neberie mi to,. v kode mam priincludovanu kniznicu stdlib.h, aj time.h. ziadny random(cislo) ani rand(cislo) mi nefunguje, uz som aj guglil, no neviem,..-1075758420, to je jediny vysledok co mi niekedy vyhodi.. dik za radu
to tam mam, ano...
uz to hadze nejake cisla, ale vsetky rovnake :D
int rand();
$ echo ' > #include <stdlib.h> > #include <stdio.h> > #include <time.h> > > void main () { > int i; > > srandom(time(NULL)); > for (i=0;i<20;i++) > printf("%i\t%i\n",i,random()); > } > '|gcc -o random -xc - && ./random <stdin>: In function ‘main’: <stdin>:11: warning: format ‘%i’ expects type ‘int’, but argument 3 has type ‘long int’ 0 1246375613 1 1767516159 2 1077419113 3 1135168903 4 385880061 5 1580507113 6 956199419 7 576043726 8 1425671823 9 565366010 10 654285134 11 16069622 12 1867766626 13 612704936 14 1206736049 15 1755474849 16 1292431244 17 103944179 18 2068720883 19 1070296638 $Odporucam prekladat so -std=99 -Wall -pedantic -w...
Ak treba nejaky lepsi random, tak odporucam napriklad tento: http://www.agner.org/random/.
Ja zas
/dev/urandomalebo /dev/random, podľa potreby.Tu by som rad vytiahol jeden zlozvyk, ktory som videl v mnohych programoch a to napriklad ziskanie nahodneho prirodzeneho cisla mensieho ako 1000 sposobom
rand()%1000. Pozor! Toto je zle, vystup nie je rovnomerne rozlozeny, resp. pravdepodobnost vytiahnutia jednotlivych cisel nie je rovnaka!Ale, na ktorej platforme si nevidel urandom? Ja som ho zatiaľ videl na všetkých, až na MIPS kde som sa ešte nepozeral aj keď mám aj ten k dispozícii.
Inak, generátory a pseudogenerátory náhodných čísel sú celým priemyselným odvetvím a ich použitie sa nedá zhrn do jedného príspevku, na tomsa asi zhodneme.
Nepredpokladám že by to chcel používať v priemysle, to by navrhoval zostavu s ohľadom na potreby HW generátora náhod. Buď by vybral CPU ktoré má v sebe šifrovanie (randomizer je jeho potrebnou súčasťou), alebo rovno šifrovaciu akceleračnú kartu do slotu alebo aspoň, kedysi sa robili dosky čo vedeli generovať náhodný śum. Barličky typu služba čo počúva na stereo mikrofóne a z toho generuje random dáta sú asi nie veľmi podporované na rôznych OS.