抽奖概率算法

刚刚阅读1回复0
东乐
东乐
  • 管理员
  • 注册排名3
  • 经验值510155
  • 级别管理员
  • 主题102031
  • 回复0
楼主

抽奖概率算法

可预定一个数字,然后按百分比计算各自的门槛值。下面: (注:由于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就能控制

0
回帖 返回游戏

抽奖概率算法 期待您的回复!

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息