好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>后端语言>PHP
<tfoot draggable='sEl'></tfoot>

phprand概率 php随机一言

很多站长朋友们都不太清楚phprand概率,今天小编就来给大家整理phprand概率,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 php ThinkPhP 5.1 按概率生成随机数? 2、 php 概率问题一副扑克牌随机抽取,出现红色10次出3次,黑色10次出1次,大小王10次出1次,这个怎么做? 3、 php取随机数概率算法 4、 PHP怎么给数组中的值赋予一个出现的概率?跪求高手解答!!! 5、 php 如何随机生成指定数字和概率? 6、 php大转盘的获奖概率是怎么算的 php ThinkPhP 5.1 按概率生成随机数?

echo (rand(1,100) <= 70 ? rand(1,50) : rand(51,100))/100;

先说明:伪随机

rand(1,100)产生1~100范围内随机数

如果 产生的随机数 小於等於 70

返回 1~50 随机数

否则返回 51~100 随机数

最後随机数/100即可。

为什麼除以100,是因为rand 的参数均为int,所以放大100倍获取随机,得出结果後再缩小100倍刚好就是分了。

php 概率问题一副扑克牌随机抽取,出现红色10次出3次,黑色10次出1次,大小王10次出1次,这个怎么做?

没错,使用系统函数rand(),参数就(1,10)。如果返回结果小于等于3,就出现红色,黑色和大小王就任选一个数代替。

php取随机数概率算法

问题有点模糊,我先暂时把“保留两位小数”理解成“[输出的随机数]保留两位小数”,而非其他因素保留多少小数。

又把“1-10”,理解成包括1和10在内其两数之间的小数,

把10-50,理解成10.01到50.00之间的数,不包括10.00。以此类推。

<?php

function genRandom(){

$p=rand(1,100);

if($p<=60) $r=rand(100,1000);

elseif($p>60 and $p<=85) $r=rand(1001,5000);

elseif($p>85 and $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>=1 and $c<=10) $p=0;

elseif($c>10 and $c<=50) $p=1;

elseif($c>50 and $c<=100) $p=2;

elseif($c>100 and $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怎么给数组中的值赋予一个出现的概率?跪求高手解答!!!

rand()随机数函数

$r = rand(1,100);//1-100的随机数

if($r > 60){ //40%概率

echo a[i];

}

php 如何随机生成指定数字和概率?

亲,你可以这样做呦!~~

如果只有这三个数,是不好弄出 0:85%  1:5%  2:10%的

但是你如果想提高某个数字出现的概率,你可以适当让这个数组增多。

你可以这样写:

<?php

// 定义一个数组,里面有85个0

$num0 = array_fill(0, 85, 0); 

// 定义一个数组,里面有5个1

$num1 = array_fill(1, 5, 1); 

// 定义一个数组,里面有10个2

$num2 = array_fill(2, 10, 2); 

// 总数组,里面总共100个元素

$allNum = array_merge($num0, $num1, $num2);

// 随机取一个元素

$randKey = array_rand($allNum);

$randnum = $allNum[$randKey];

// 以上就可以实现出现0的概率是85% 出现1的概率是5% 出现2的概率是10%了,因为一共一百个数,里面有85个是0, 5个是1, 10个是2

希望可以帮到你呦!~如果有不正确的地方,欢迎指正!~~

本人博客: ,欢迎交流学习!~~

php大转盘的获奖概率是怎么算的

php中奖概率算法,可用于刮刮卡,大转盘等抽奖算法。用法很简单,代码里有详细注释说明,一看就懂

$proCur) {

$randNum = mt_rand(1, $proSum);

if ($randNum <= $proCur) {

$result = $key;

break;

} else {

$proSum -= $proCur;

}

}

unset ($proArr);

return $result;

}

/*

* 奖项数组

* 是一个二维数组,记录了所有本次抽奖的奖项信息,

* 其中id表示中奖等级,prize表示奖品,v表示中奖概率。

* 注意其中的v必须为整数,你可以将对应的 奖项的v设置成0,即意味着该奖项抽中的几率是0,

* 数组中v的总和(基数),基数越大越能体现概率的准确性。

* 本例中v的总和为100,那么平板电脑对应的 中奖概率就是1%,

* 如果v的总和是10000,那中奖概率就是万分之一了。

*

*/

$prize_arr = array(

'0' => array('id'=>1,'prize'=>'平板电脑','v'=>1),

'1' => array('id'=>2,'prize'=>'数码相机','v'=>5),

'2' => array('id'=>3,'prize'=>'音箱设备','v'=>10),

'3' => array('id'=>4,'prize'=>'4G优盘','v'=>12),

'4' => array('id'=>5,'prize'=>'10Q币','v'=>22),

'5' => array('id'=>6,'prize'=>'下次没准就能中哦','v'=>50),

);

/*

* 每次前端页面的请求,PHP循环奖项设置数组,

* 通过概率计算函数get_rand获取抽中的奖项id。

* 将中奖奖品保存在数组$res['yes']中,

* 而剩下的未中奖的信息保存在$res['no']中,

* 最后输出json个数数据给前端页面。

*/

foreach ($prize_arr as $key => $val) {

$arr[$val['id']] = $val['v'];

}

$rid = get_rand($arr); //根据概率获取奖项id

$res['yes'] = $prize_arr[$rid-1]['prize']; //中奖项

unset($prize_arr[$rid-1]); //将中奖项从数组中剔除,剩下未中奖项

shuffle($prize_arr); //打乱数组顺序

for($i=0;$i

关于phprand概率的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于phprand概率 php随机一言的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did196230
更新时间:2023-04-26   阅读:25次

上一篇: 雪花idphp 雪花简笔画

下一篇:php环境安装redis php环境安装教程

最新资料更新

  • 1.析构函数php 析构函数不能指定返回类型
  • 2.php用户检索记录系统 php搜索数据库
  • 3.php编写确认密码 php用户名密码
  • 4.php多继承的作用 php继承关键字
  • 5.php后端需要css吗 php后端教程
  • 6.php多线程上锁 php8 jit 多线程
  • 7.php框架制作教程外包 怎么做php框架
  • 8.php接收url php接收json数据
  • 9.qbapi.php的简单介绍
  • 10.mes开源框架PHP mes开源框架 python
  • 11.php5.4.13的简单介绍
  • 12.php下载控件 php下载器
  • 13.php在线运行测试 php 测试工具
  • 14.hbuilder写php hbuilder写PHP
  • 15.phpwsdl调用 php调用php文件
  • 16.输出图片php 输出图片英文
  • 17.十荟团php开发怎么样 十荟团内部人士真实感受
  • 18.php查询数组找到 php查找数组元素
  • 19.php梗怎么来的 php是什么意思饭圈
  • 20.phpsql过滤类 php过滤器

CopyRight:2016-{hedonghua:year}{hedonghua:sitegs} 备案ICP:湘ICP备09009000号-16 {hedonghua:sitejym}
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]