當前位置:首頁 » 操作系統 » 抽獎隨機演算法

抽獎隨機演算法

發布時間: 2023-03-04 17:35:16

1. 求java演算法:根據物品的數量來確定抽獎的概率(當物品數量為0時無論如何都不可能選到)

public class Lottery {

private int m = 1000;//發放獎券的數量
private int n = 2;//獎品的數量

public boolean getLottery(){
boolean isLottery = false;
double d = (double)n/(double)m;//中獎概率
double r = Math.random();//0~1之間的隨機數,包括0
if(r<d){//如果隨機數小於概率 那麼中獎
n--;//獎品數量-1
isLottery = true;
}
m--;//獎券數量-1
return isLottery;
}

}

2. 抽獎獎品概率的演算法謝謝了,大神幫忙啊

可以預定義一個數,然後根據百分比計算各自的門檻值。如下: (注意:概率需要從小到大排列,因為用if判斷的問題。) #define BASE_NUMBER 32767 #define BASE_DIV 100 #define RATE1 1 #define RATE2 5 #define RATE3 20 #define RATE4 74 int var1, var2, var3, var4; main() { var1 = (int)((float)BASE_NUMBER*RATE1/BASE_DIV); var2 = (int)((float)BASE_NUMBER*RATE2/BASE_DIV); var3 = (int)((float)BASE_NUMBER*RATE3/BASE_DIV); var4 = (int)((float)BASE_NUMBER*RATE4/BASE_DIV); ..... if ( rand <= var1 ) { // 第一種 } else if ( rand <= var2 ) { // 第二種 } else if ( rand <= var3 ) { // 第三種 } else { // 第四種 } ... } 如上,只需要改變BASE_DIV 和RATE1 2 3 4就能控制

求採納

3. JAVA抽獎的演算法

那你可以再1-10000之間隨即嘛,概率小的獎品設置為1-10,概率大的設置為11-1000,最後隨即出來的數判斷一下在那個區間就可以了.
實體類,就是寫一個JAVA BEAN嘛,裡面記載獎品名字和數量啊,不懂可以追問

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:594
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:889
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:583
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:766
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:686
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1015
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:257
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:117
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:808
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:714