Mail Archives: djgpp/2007/09/05/11:34:50
> Well, okay - random() doesn't anything like guarantee
> equidistribution. But that said, wouldn't scaling the result set
> at least not give you anything *worse* than what you started with?
If you do the math, you see that there are 47 numbers left over when
you mod MAX_INT % 50. That means the last three numbers (47, 48, 49)
are slightly less likely to be chosen. The difference in probability?
1 in 42,949,672 (0.9999999767169356).
So, for a range this small, it really doesn't matter, and if it *does*
matter, you probably already know more about random number generation
than any of us here.
However, integer modulus is a LOT cheaper than floating point
division.
- Raw text -