php取随机数的概率算法
“1-10”也被理解为包括1和10在内的两个数之间的小数。
将10-50理解为10.01到50.00之间的数,不包括10.00。诸如此类。
& lt?服务器端编程语言(Professional Hypertext Preprocessor的缩写)
功能?genRandom(){
$ p =兰特(1,100);
if($ p & lt;=60)?$ r =兰特(100,1000);
else if($ p & gt;60?然后呢。$ p & lt=85)?$ r =兰特(1001.5000);
else if($ p & gt;85?然后呢。$ p & lt=95)?$ r =兰特(5001,10000);
不然呢?$ r =兰特(10001,?20000);
回归?100雷亚尔;
}
$ a = array();
$ total = 50000
for($ I = 0;$ i & lt总计美元;$i++){
$ c = gen random();
if($ c & gt;=1?然后呢。$ c & lt=10)?$ p = 0;
else if($ c & gt;10?然后呢。$ c & lt=50)?$ p = 1;
else if($ c & gt;50?然后呢。$ c & lt=100)?$ p = 2;
else if($ c & gt;100?然后呢。$ c & lt=200)?$ p = 3;
不然呢?$ p = 4;
如果(!array_key_exists($p,?$a))?$ a[$ p]= 1;
不然呢?$ a[$ p]++;
}
如果(!数组_键_存在(4,?$a))?$ a[4]= 0;
回声?“样本总数”。总计美元。“< br/>”;
回声?“1-10样本号”。$a[0]。',?($ a [0]/$ total * 100)。”%
回声?" & gt10-50样本号”。$a[1]。',?($ a [1]/$ total * 100)。”%
回声?" & gt50-100样本量”。$a[2]。',?($ a [2]/$ total * 100)。”%
回声?" & gt100-200样本量”。$a[3]。',?($ a [3]/$ total * 100)。”%
回声?“其他样品的数量”。$a[4]。',?($ a [4]/$ total * 100)。”%
1-10样本号30052,?占60.104%
& gt10-50样品编号12404,?占24.808%
& gt50-100样品编号4993,?占9.986%
& gt100-200样品号2551,?占5.102%
其他样本数0,?0%