Hello:
Think about it this way. Since Rand() produces random numbers between 0 and 1. The 6
outcomes can be calculated by using random numbers from 0 to .1666666666..... to represent
one, and all numbers from .166666666.... to .3333333333 to represent two etc. until
..83333333..... to 1.000000 to represent six. Your formula will result in .1 being
represented as a two and numbers less than .1 being one. Hence about 10% of numbers will be
one. This same process produces extra two, three, four and five. And again produces less
sixes, any random between number between .8333333 and .9000 will produce five rather than
6, again that would mean about 10% sixes, since the numbers between .83 and .90 do not
produce the required six.
Try this formula: =INT((6*RAND())+1) (this is from the Excel help file)
It will produce the results you want.
Pieter Vandenberg
: I've used =ROUND(RAND()*(6-1)+1,0) in 1000 cells to simulate rolling 1000
: dice. This consistently has a bias toward generating 2, 3, 4, or 5 about 20%
: (more than 16.6%) of the time and 1 or 6 only 10% of the time (less than
: 16.6%). When I used RANDBETWEEN(1,6) I do not have this problem.
: Anyone know why?