|
03. 02. 2006. | #1 |
profesionalac
Professional
|
rand i mt_rand pitanje..
pitanje u vezi razlike ove dvije php funkcije:
rand i mt_rand.. naime procitao sam na php.net-u o obema funkcijama i vidio sam da je sintaksa ista a da mt_rand bolje generise random vrijednosti e sad me interesuje s obzirom da sam radio neku skriptu koja dosta koristi rand funkciju, da li mogu nastati neki problemi ako promjenim rand u mt_rand u kompletnoj skripti?? Hvala |
03. 02. 2006. | #2 |
Goran Pilipović
Sir Write-a-Lot
|
Ne, neces imati problema, osim sto sam ja ukapirao da je PHP random funkcija jako losa. Pogledaj temu o generisanju 2 miliona unique kodova. Vec posle 1000 random stringova od 8 karaktera pocinje da duplira a neki kodovi su se vec posle 5000 generisanih kodova pojavili i po 10 puta.
Ne znam koliko ti je bitno to, ako nije previse onda mozes slobodno sa mt_rand().
__________________
Goran Pilipović a.k.a. Ugly Fingers Bradley f.k.a. bluesman I don't always know what I'm talking about but I know I'm right! |
03. 02. 2006. | #3 | |
profesionalac
Professional
|
Citat:
veoma lose pogotovo ukoliko je random veoma bitan u okviru skripte.. ok hvala na odgovoru onda cu samo u svojim funkcijama da zamjenim rand sa mt_rand.. |
|
03. 02. 2006. | #4 |
Python Ambassador
Master
|
Bojane, neke razlike između rand() i mt_rand() sam dao u ovom unosu.
[edit]Izmenio sam link pošto nije pokazivao na pravi post. bluesman[/edit]
__________________
Python Ambassador of Serbia Poslednja izmena od bluesman : 03. 02. 2006. u 22:57. |
04. 02. 2006. | #5 | |
Ivan Dilber
Sir Write-a-Lot
|
Citat:
ono u cemu se ogleda los kvalitet php generatora (i vecine drugih ugradjenih u kompajlere) je sto vrednosti krecu da konvergiraju ka nekoj vrednosti relativno brzo (ali relativno brzo znaci nesto tipa par hiljada iteracija), odnosno nemaju vise svi brojevi istu verovatnocu (iliti uniformnu raspodelu) nego se vrednosti bliske jednom broju pojavljuju cesce... Ako kreiras kratke sekvence brojeva (tipa 15 ili 100), onda te taj problem ne brine, onda je glavna frka sto random seed nije dovoljno random (nisam 100% siguran, ali cini mi se da php koristi microtime za to, znaci broj izmedju 0 i milion). U tom slucaju, ako si na unixu mozes da probas da kao seed koristis /dev/urandom da pokupis slucajnu vrednost iz sireg opsega...
__________________
Leadership is the art of getting people to want to do what you know must be done. Poslednja izmena od ivanhoe : 04. 02. 2006. u 02:56. |
|
04. 02. 2006. | #6 | |
Python Ambassador
Master
|
Pa zavisi, mt_rand koristi algoritam koji baš i neće da počne da konvergira brzo
Citat:
Off Topic: Da, znam da sam počeo samog sebe da citiram. Ima li ko problema u vezi toga? A pošto mi je u virtuelnoj mašini dignut MATLAB, odlučih da proverim koliko je Mersenne Twister algoritam u stvari jak: Kôd:
>> broj_jedinstvenih = length( unique( randint(1, 2e6, 2^32) ) ) broj_jedinstvenih = 1999511 >> broj_duplih = 2e6 - broj_jedinstvenih broj_duplih = 489 >> broj_duplih_procenti = broj_duplih / 2e6 * 100 broj_duplih_procenti = 0.0245 >>
__________________
Python Ambassador of Serbia Poslednja izmena od Petar Marić : 04. 02. 2006. u 03:49. |
|
04. 02. 2006. | #7 |
Boris
Grand Master
Datum učlanjenja: 01.12.2005
Lokacija: Novi Sad
Poruke: 775
Hvala: 5
156 "Hvala" u 2 poruka
|
Isti procenat koji smo dobili nakon testova u perlu ako se ne varam... 0.024-0.025..
__________________
"It’s important to have goals when you pet. Otherwise you’re just rubbing another mammal for no reason." - Scott Adams |
04. 02. 2006. | #8 | |
Ivan Dilber
Sir Write-a-Lot
|
Citat:
nece, mt_rand je ok, jer on koristi Mersenne Twister...i ne samo to nego je i dosta brzi od obicnog rand-a......ono sto sam ja pricao se odnosi na standardne rand generatore koji se oslanjaju na libc funkcije za to (a dobar deo kompajlera to koristi po defaultu...), oni nisu dobri za kreiranje duzih sekvenci rnd brojeva...
__________________
Leadership is the art of getting people to want to do what you know must be done. |
|
|
|
Slične teme | ||||
Tema | Početna poruka teme | Forum | Odgovori | Poslednja poruka |
SEO - URL Pitanje | Zizi | Marketing i SEO | 14 | 17. 07. 2009. 15:42 |
jos jedan flickr-rand-images experiment | ivanhoe | Linkovi | 0 | 16. 02. 2009. 23:19 |
CSS pitanje | mirko75 | Sva početnička pitanja | 2 | 01. 06. 2008. 23:01 |
PDO pitanje | McChoban | PHP | 3 | 31. 08. 2007. 09:40 |
Pitanje ? | Ivan | Opušteno | 10 | 17. 07. 2006. 10:00 |