加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php 中奖概率算法实现代码

发布时间:2020-12-12 21:58:43 所属栏目:PHP教程 来源:网络整理
导读:实现代码: $v ){ $sum += $v[$glname]; } $R = rand(1,$sum);//获取随机数foreach( $jp as $k = $v){ if( $R = $v[$glname] ){ return $v; } $R = $R - $v[$glname] ;} } //使用方法 //模拟一个从数据库中读取的 中奖配置 gl 为 中奖的概率 //例如array( 'g

实现代码:

$v ){ $sum += $v[$glname]; }
$R = rand(1,$sum);//获取随机数

foreach( $jp as $k => $v){
    if( $R <= $v[$glname] ){
        return $v;
    }
    $R = $R - $v[$glname] ;
}

}

//使用方法
//模拟一个从数据库中读取的 中奖配置 gl 为 中奖的概率
//例如array( 'gl' => 10,'title' => '一等奖');的中奖概率 = 10 / (10+20+30+40)
$jp = array();
$jp[] = array( 'gl' => 10,'title' => '一等奖');
$jp[] = array( 'gl' => 20,'title' => '二等奖');
$jp[] = array( 'gl' => 30,'title' => '三等奖');
$jp[] = array( 'gl' => 40,'title' => '未中奖');

//调用 中奖概率函数
//返回中奖 信息数组 例如:array( 'gl' => 10,'title' => '一等奖');
$zj = get_zj( $jp );

//输出数组
var_dump($zj);

使用方法 模拟一个从数据库中读取的 中奖配置 gl 为 中奖的概率 例如array( 'gl' => 10,'title' => '一等奖');的中奖概率 = 10 / (10+20+30+40) $jp = array(); $jp[] = array( 'gl' => 10,'title' => '一等奖'); $jp[] = array( 'gl' => 20,'title' => '二等奖'); $jp[] = array( 'gl' => 30,'title' => '三等奖'); $jp[] = array( 'gl' => 40,'title' => '未中奖');

调用 中奖概率函数
返回中奖 信息数组 例如:array( 'gl' => 10,'title' => '一等奖');

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读