有時候需要產生隨機數。並讓這些隨機數出現以概率的方式出現
下面舉個例子:
隨機產生1-8的整數,
希望1的概率是50%
2的概率是10%
3的概率是10%
4的概率是10%
5的概率是5%
6的概率是5%
7的概率是5%
8的概率是5%
想法:先隨機1-100的隨機整數
然後出現的隨機數在1-50的概率為50%
由此可以設為出現1概率
**var numdsf = math.floor(math.random()*(1 - 100) + 100);
if(numdsf>=1&&numdsf<=50)else if(numdsf>=51&&numdsf<=60)else if(numdsf>=61&&numdsf<=70)else if(numdsf>=71&&numdsf<=80)else if(numdsf>=81&&numdsf<=85)else if(numdsf=>86&&numdsf<=90)else if(numdsf>=91&&numdsf<=95)else if(numdsf>=95&&numdsf<=100)
這樣設定下來。那麼i的出現概率正好符合我想要的隨機數的概率。
0.001%,0.5%那些極低概率。同樣可以用這個方法,只不過是增加隨機數而已。
Js 控制隨機數概率
新 控制隨機數概率 演算法精簡了一下 如 取 1 10 之間的隨機數,那麼他們的取值範圍是 整數區間概率1 0,1 0.12 1,2 0.13 2,3 0.14 3,4 0.15 4,5 0.16 5,6 0.17 6,7 0.18 7,8 0.19 8,9 0.110 9,10 0.1如果調整2的...
概率 隨機數演算法
int generate01 int func else if num1 0 num2 1 return ret int generaterandomnum int max int bit num 0,i 0 int result 0 while 0x01 bit num max bit num w...
Eddy Walker(隨機數猜概率)
題意 n個點的環,初始在0,可以隨機向前向後,n個位置都走完,最後停在m的概率,最後輸出前i組概率的乘積 題解 打表發現,1 n 1的點概率為 include include include include include include include include include includ...