Author: Vincent Diepeveen
Date: 05:38:11 01/14/00
Go up one level in this thread
On January 13, 2000 at 11:29:25, Thorsten Greiner wrote: >On January 13, 2000 at 11:22:20, Vincent Diepeveen wrote: > >>number = rand()%total; > >rand() is evil. It uses a linear congruency method like > > new random number = (old random number * constant + constant) % constant > >Information in low bits of 'old random number' is lost in this formula. Since >the number of seconds since 1970 is pretty much constant in lets say January >2000, the random numbers produced will be quite similar... > >Also, never use modulo on the results of rand() - use something like > > rand() / (RAND_MAX / total) > >since the low bits of rand() are not as random as the high bits. Or use a real >random generator - here is a good one: http://www.agner.org/random > >Rgds > -Thorsten Thanks! I'm checking the link out for some workable C code.
This page took 0 seconds to execute
Last modified: Thu, 15 Apr 21 08:11:13 -0700
Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.