随笔-4  评论-4  文章-0  trackbacks-0

昨天帮一个哥们改了一个JAVA的模拟抽奖程序,有点意思。自己还给它加了一个暗箱,嘿嘿。暗箱还是比较暗,而且作用效果不错,准备再改改。改好了发源码!

本程序用于模拟抽奖,可用于日常的单位、公司进行抽奖活动。

具体的算法思想是:

首先从一个文本文件中读取参加抽奖的人员信息,该信息有一定的格式既:姓名-手机号码(根据具体情况而定,切记中间是字符“-”,否则无法读入)。如下图:

程序将读入的信息装入两个VECTOR中(v_identNumberv_name)。点击“开始”按钮进行抽奖操作。

后台的数据产生是利用JAVA的伪随机函数。根据随机数产生展现在前台的字符,每次间隔的时间是0.05秒。

用户点击“停止”按钮,操作线程就挂起,这时产生相应的中奖号码(即前台展示的号码),中奖号码存储在v_printident中。v_printident同样是VECTOR类型的。

本系统设置的是将产生33等奖,22等奖,11等奖还有一个特等奖。系统将根据用户点击按钮次数来确定产生几等奖。

奖项全部产生以后,点击保存,可以将结果信息保存在当前目录下的result.txt中。

关于暗箱的说明:

基本说明:

暗箱操作不是光明正大的行为,但是作为一个小小的研究对象,本人觉得还是有点意思。

具体功能:

可以实现对制定人员的获奖操作,可以实现对特等奖的产生操作。

实现机制:

首先,用户读入指定获奖的人员文件,数据的格式为:姓名*号码切记是(“*”,否则无法读入)。在人员文件的最后一行,是控制中奖力度的key,具体格式为“ *key”(切记前面要有一个空格键),如下图:

关于key的说明:

Key的值可以设置110,如果没有在这个范围,系统将自动设置key5

系统的key设置得越大,指定人员的获奖概率就越大。具体公式:key/(总人数*指定人数)

如果key的值设置为10,系统将会产生特等奖,获得者为制定人员的第一项,但是除了特等奖,不会再对其他人员有任何操作(相当于只能产生特等奖)。

其他一些说明读者自己去看程序,这里不再赘述。程序很简单(在后面的):

posted on 2008-08-13 17:20 志遥 阅读(3467) 评论(4)  编辑  收藏

评论:
# re: Java模拟抽奖程序[未登录] 2008-08-13 17:28 | Ravili
暗箱,哈哈 ,暗箱操作。  回复  更多评论
  
# re: Java模拟抽奖程序 2011-01-13 10:23 | 得到
@Ravili
当地  回复  更多评论
  
# re: Java模拟抽奖程序 2011-12-30 00:06 | peplemon
怎么看不到程序  回复  更多评论
  
# re: Java模拟抽奖程序 2014-10-01 09:59 | tomson
新手求源码,谢谢  回复  更多评论
  

只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问