php實現抽獎的簡單概率演算法
配置陣列(v代表概率)
$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), );
邏輯程式碼
foreach ($prize_arr as $key => $val) {
$arr[$val['id']] = $val['v'];
}
function get_rand($proArr) {
$result = '';
//概率陣列的總概率精度
$proSum = array_sum($proArr);
//概率陣列迴圈
foreach ($proArr as $key => $proCur) {
$randNum = mt_rand(1, $proSum);
if ($randNum <= $proCur) {
$result = $key;
break;
} else {
$proSum -= $proCur;
}
}
return $result;
}
相關文章
- 按照獎品概率分佈抽獎的實現概率分佈
- javascript實現的簡單抽獎程式碼JavaScript
- JavaScript簡單抽獎程式的實現及程式碼JavaScript
- php中獎概率演算法,可用於大轉盤、九宮格、翻牌、刮刮卡等抽獎演算法PHP演算法
- PHP+jQuery開發簡單的翻牌抽獎例項PHPjQuery
- 能夠設定中獎概率的抽獎效果
- 抽獎轉盤的簡單思路
- php抽獎功能PHP
- 概率計算(抽獎活動、命中率)
- Android 抽獎轉盤的實現Android
- 由B站抽獎注水談談遊戲中的概率事件遊戲事件
- JavaScript實現隨機抽獎效果JavaScript隨機
- php實現簡單的SQLBuilderPHPSQLUI
- 用jQuery編寫簡單九宮格抽獎jQuery
- C#實現的簡單的隨機抽號器C#隨機
- iOS 抽獎輪盤效果實現思路iOS
- 簡易版抽獎小程式
- php實現一個簡單的socketPHP
- php實現一個簡單的堆PHP
- A*演算法的簡單實現薦演算法
- js實現刮刮樂抽獎效果程式碼例項JS
- php實現簡單路由router功能PHP路由
- PHP實現簡單順序棧PHP
- iOS實現簡單的抽屜式側欄——MMDrawerController的使用iOSController
- 延時 (遲) 操作的 PHP 簡單實現PHP
- PHP實現的簡單日曆程式碼PHP
- js抽獎JS
- vue3實現一個抽獎小專案Vue
- PHP 實現簡單阻塞分散式鎖PHP分散式
- 最簡單的LRU演算法java實現演算法Java
- canvas 基礎系列(三)之實現九宮格抽獎Canvas
- canvas 基礎系列(二)之實現大轉盤抽獎Canvas
- 手遊“抽獎介面”的思考
- Oracle技術嘉年華 現場抽獎活動Oracle
- 技術卡片 - PHP 鏈式呼叫的簡單實現PHP
- PHP實現最簡單的聊天室應用PHP
- 實現一個簡單的DOM diff演算法演算法
- 實現一個簡單的輪詢演算法演算法