文档章节

自己参考别人写的一个抽奖代码

IceRainYWC
 IceRainYWC
发布于 2014/04/18 16:53
字数 198
阅读 213
收藏 1
import java.util.Random;
public class PrizeGenerator {
 public static final int MAXBASE = 10000;//基数
 public static int counter = 0;
 /**
  * @param args
  */
 public static void main(String[] args) {
  for(int i=0;i<MAXBASE;i++){
   gerneratePrize();
  }
  System.out.println(">>>>>>>>>>>>中一等奖次数:"+counter);
 }
 
 public static int randomNumber(int minNum,int maxNum){
  Random rand = new Random();
  int randomNum = rand.nextInt(maxNum);
  randomNum = randomNum%(maxNum-minNum+1)+minNum;
  return randomNum;
 }
 
 public static void gerneratePrize(){
  int[][] prizeOption = {{1,1},{2,2},{3,20},{4,77}};//{4,77}表示奖品等级是4(未中将),中奖率是77%
  int rand = randomNumber(1, MAXBASE);
  int line = 0;  
  int temp = 0;
  for ( int i = 0; i < prizeOption.length; i++) {  
        int[] prize = prizeOption[i];  
        int rate = prize[1];  
        temp = temp + rate*(MAXBASE/100);  
        line = MAXBASE - temp;  
        if (rand > line && rand <= (line + rate)) {
               if(i==1){
                counter++;
                System.err.print("抽奖随机数:"+rand);
                System.err.println("中了一等奖!");
               }else{
                System.out.println("中了"+prizeOption[i][0]+"等奖!");
               }
            break;  
        } 
  }
 }
}

不知写的有什么不对,请大家指正!

注:参考文章JS大转盘抽奖

© 著作权归作者所有

共有 人打赏支持
IceRainYWC
粉丝 13
博文 111
码字总数 49297
作品 0
石家庄
程序员
私信 提问
加载中

评论(1)

星神_
星神_
首先,rand<=(line+rate)貌似是个错误,没line并没有记录每一次的line,1等奖概率1,而2等奖概率就变为了3,
waleswood/Lottery

#WPF抽奖程序 WPF做的一个抽奖程序,终于做好了,希望我能中个大奖!! ,程序所用素材和部分代码来自网络,取之于田还之于田,虽然写的比较烂,还是开源了吧。 #技术说明 很简单的小程序,没...

waleswood
2015/02/05
0
0
[分享] 来,做一个问卷调查(有抽奖!)

前言 “小王,明天公司在***举办一个xxx产品发布会,你今天准备2000份问卷调查。还有,我们这次还做一个抽奖活动,也记得弄一个抽奖箱和一些抽奖球哦。” …… 活动结束了,小王想起早上捧着...

没错就是酱紫
2016/07/28
90
0
js幸运大转盘开发

最终效果实例下载:http://www.oschina.net/code/snippet235264454997 一.大转盘准备工作 网上的一个抽奖大转盘实例http://www.jq22.com/yanshi2252 这就是我们要开发的效果,不过我们是让指...

透笔度
2016/03/28
2.4K
2
【学习笔记】Android Apk反编译初识

三个重量级的工具: 1.apktool 2.dex2jar 3.jd-gui-windows 工具下载地址:http://pan.baidu.com/s/1mh4F1PY apktool版本太低的话,请到这里下载http://ibotpeaches.github.io/Apktool/ 首先...

小树coding
2016/02/01
95
0
软件测试之路浅谈

小李从毕业以来从事过两个多月的Oracle开发后转型了转型为转件测试,总结浅谈一下之间的心路历程,希望能给徘徊在开发和测试之前的同学一点小小参考,希望路过的测试大牛给出一些很好的指导。...

张立达
2017/05/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Windows 10 设置 Java 环境变量

首先你需要在我的电脑中打开,找到环境变量属性。 找到环境变量属性 找到环境变量属性后单击将会看到下面的设置界面。 在这个界面中设置高级系统设置。 环境变量 在弹出的界面中选择设置环境...

honeymose
26分钟前
1
0
用any-loader封装jQuery的XHR —— 随便写着玩系列

哎,都说没人用JQuery啦,叫你别写这个。 其实我也是好高骛远使用过npm上某个和某个很出名的XHR库,嗯,认识我的人都知道我喜欢喷JQ,以前天天喷,见面第一句,你还用JQ,赶紧丢了吧。但我也...

曾建凯
今天
5
0
聊聊storm的AggregateProcessor的execute及finishBatch方法

序 本文主要研究一下storm的AggregateProcessor的execute及finishBatch方法 实例 TridentTopology topology = new TridentTopology(); topology.newStream("spout1", spout......

go4it
今天
4
0
大数据教程(7.5)hadoop中内置rpc框架的使用教程

博主上一篇博客分享了hadoop客户端java API的使用,本章节带领小伙伴们一起来体验下hadoop的内置rpc框架。首先,由于hadoop的内置rpc框架的设计目的是为了内部的组件提供rpc访问的功能,并不...

em_aaron
今天
5
0
CentOS7+git+github创建Python开发环境

1.准备CentOS7 (1)下载VMware Workstation https://pan.baidu.com/s/1miFU8mk (2)下载CentOS7镜像 https://mirrors.aliyun.com/centos/ (3)安装CentOS7系统 http://blog.51cto.com/fengyuns......

枫叶云
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部