假設 有四個選項:a 佔 10%,b佔20% ,c佔30% , d 佔 40% ,原理就是現獲取隨機數,然後找區間。
當然了,選項的數量可以任意。
目前預設是 總和是 100% 。如果需要別的數,修改 隨機數的範圍即可。
這個演算法,比較簡單,效率也還算高。
當然因為是 rand() ,所以產生的是偽隨機數,不是真正意義上的隨機,能湊合著用吧。
/*
* ---a------b------------c---------d
* 1----11---------30--------60---------100
* 百分比 概率選擇
*/
$data
=
array
(
'a'
=> 10 ,
'b'
=> 20 ,
'c'
=> 30 ,
'd'
=> 40
);
echo
randomselect(
$data
);
function
randomselect( &
$array
)
}
if
(
$flag
==
''
)
return
$flag
;
}
ojbc 取隨機數
隨機數的使用 1 arc4random 比較精確不需要生成隨機種子 使用方法 通過arc4random 獲取0到x 1之間的整數的 如下 int value arc4random x 獲取1到x之間的整數的 如下 int value arc4random x 1 2 ccrandom 0 1 coc...
c 取隨機數
c c 產生隨機數用到兩個函式rand 和 srand 一.不指定範圍產生隨機數 用到函式rand 函式原型為int rand 無引數。此時會產生乙個介於0 rand max間的整數。rand max的大小可以檢視,在include資料夾 linux在usr目錄 windows在安裝目錄 的stdl...
Oracle 取隨機數
1 從表中隨機取記錄 select from select from staff order by dbms random.random where rownum 4 表示從staff表中隨機取3條記錄 2 產生隨機數 select dbms random.random from dual 產生乙個...