php随机数函数,excel整数随机数
大家好,今天来为大家解答php随机数函数这个问题的一些问题点,包括excel整数随机数也一样很多人还不知道,因此呢,今天就来为大家分析分析,现在让我们一起来看看吧!如果解决了您的问题,还望您关注下本站哦,谢谢~
php取随机数概率算法
问题有点模糊,我先暂时把“保留两位小数”理解成“[输出的随机数]保留两位小数”,而非其他因素保留多少小数。
又把“1-10”,理解成包括1和10在内其两数之间的小数,
把10-50,理解成10.01到50.00之间的数,不包括10.00。以此类推。
<?php
functiongenRandom(){
$p=rand(1,100);
if($p<=60)$r=rand(100,1000);
elseif($p>60and$p<=85)$r=rand(1001,5000);
elseif($p>85and$p<=95)$r=rand(5001,10000);
else$r=rand(10001,20000);
return$r/100;
}
$a=array();
$total=50000;
for($i=0;$i<$total;$i++){
$c=genRandom();
if($c>=1and$c<=10)$p=0;
elseif($c>10and$c<=50)$p=1;
elseif($c>50and$c<=100)$p=2;
elseif($c>100and$c<=200)$p=3;
else$p=4;
if(!array_key_exists($p,$a))$a[$p]=1;
else$a[$p]++;
}
if(!array_key_exists(4,$a))$a[4]=0;
echo"总样本数".$total.'<br/>';
echo"1-10样本数".$a[0].',占'.($a[0]/$total*100).'%<br/>';
echo">10-50样本数".$a[1].',占'.($a[1]/$total*100).'%<br/>';
echo">50-100样本数".$a[2].',占'.($a[2]/$total*100).'%<br/>';
echo">100-200样本数".$a[3].',占'.($a[3]/$total*100).'%<br/>';
echo"其他样本数".$a[4].',占'.($a[4]/$total*100).'%<br/>';总样本数50000
1-10样本数30052,占60.104%
>10-50样本数12404,占24.808%
>50-100样本数4993,占9.986%
>100-200样本数2551,占5.102%
其他样本数0,占0%
Php中生成6位随机数并显示
Php中生成6位随机数并显示实现如下:
1、使用shuffle函数生成随机数。
<?php
$arr=range(100000,999999);
shuffle($arr);
foreach($arras$values)
{
echo$values."";//显示随机数
}
?>2、使用array_unique函数生成随机数。
<?php
$arr=array();
while(count($arr)<10)
{
$arr[]=rand(1,10);
$arr=array_unique($arr);
}echoimplode("",$arr);
?>
扩展资料:
PHP生成随机数的两种方法:
1、rand()函数:
//无参数:rand()函数用户获取随机数。
echo rand()."
";//得到一个不定位数的随机数
//带参数:rand($min,$max),$min表示从XX开始取值,$max表示最大只能为XX。
echo rand(5, 15);//在5~15之间取一个数
注意:mt_rand()用法跟rand()类似,但是mt_rand()的执行效率更高。
2、使用array_flip函数生成随机数,可以去掉重复值。
php 生成多个(比如1w个)不重复的12位随机数,请教!
一般来说你一次搞这么多随机数,每次单独随机排重,1w个随机数弄下来效率就不行了,比较随机函数算法还是效率不是很高;
我感觉最简单做法,先弄好12位按顺序生成大数组,第一种就是array_rand
随机取,第二种就是把12打乱,然后用array_slice取1万条;
你这个问题我关注一下,看看其他有没有好办法。
关于php随机数函数和excel整数随机数的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。