
Patrick B. answered 07/13/19
Math and computer tutor/teacher
The random number generator is supposed to be uniformly distributed or obey the uniform distribution; that is, each number is equally likely to be selected, so using the random number generator is theoretically a bad idea.
The normal distribution tends to FAVOR the mean average. In fact by empirical rule, 2/3 of the data lie within 1 standard deviation of the mean average. In your fireworks example, the debris would tend to cluster around the launch pad with fragments in fewer amounts spreading outward.
So one option would be to convert your data to z-scores and throw away anybody between -1 and 1.
That would leave you with 1/6 of them being "SMALL" and 1/6 of them being "LARGE"
If you want all 1/3 of them, just change the sign, as the bell curve is symmetric anyway.
So what you're getting is z = (-infinity,-1) U (1,infinity)
You can hijack the random number generator and create a hashed function like this:
if 0 < random # < 25 ---> maps to 1
25 < random # < 50 -----> maps to 2
50 < random # < 75 -----> maps to 3
70 < random # < 100 ----> maps to 4
that way you will always get a "SMALL" number