Это сообщение оставил Kikasso, но в результате каких то глюков, его сообщения при объединении, попали совсем в другую тему к другому автору.
неравномерно.

Код:
var arr = [];
var i = 100000;
function randRange(min:Number, max:Number):Number
{
var randomNum:Number = Math.round( Math.random()*(max-min) +min );
return( randomNum );
}
while (i--){
var n = randRange( 49, 52 );
if(!arr[n])arr[n] = 0;
arr[ n ]++;
}
trace ( 49 + ">" + arr[49]);
trace ( 50 + ">" + arr[50]);
trace ( 51 + ">" + arr[51]);
trace ( 52 + ">" + arr[52]);
Первый и последний выпадают вдвое реже остальных.
вот теперь шоколадно:

Код:
var arr = [];
var i = 100000;
function randRange(min:Number, max:Number):Number
{
var randomNum:Number = Math.floor( Math.random()*( max + 1 - min ) + min );
return( randomNum );
}
while (i--){
var n = randRange( 49, 52 );
if(!arr[n])arr[n] = 0;
arr[ n ]++;
}
trace ( 49 + ">" + arr[49]); //49>25196
trace ( 50 + ">" + arr[50]); //50>24749
trace ( 51 + ">" + arr[51]); //51>24856
trace ( 52 + ">" + arr[52]); //52>25199
или Math.ceil, тогда min не будет включен, надо будет добавлять.
Если maх или min не целые числа - округли результат.