隨筆-4  評(píng)論-4  文章-0  trackbacks-0

          昨天幫一個(gè)哥們改了一個(gè)JAVA的模擬抽獎(jiǎng)程序,有點(diǎn)意思。自己還給它加了一個(gè)暗箱,嘿嘿。暗箱還是比較暗,而且作用效果不錯(cuò),準(zhǔn)備再改改。改好了發(fā)源碼!

          本程序用于模擬抽獎(jiǎng),可用于日常的單位、公司進(jìn)行抽獎(jiǎng)活動(dòng)。

          具體的算法思想是:

          首先從一個(gè)文本文件中讀取參加抽獎(jiǎng)的人員信息,該信息有一定的格式既:姓名-手機(jī)號(hào)碼(根據(jù)具體情況而定,切記中間是字符“-”,否則無法讀入)。如下圖:

          程序?qū)⒆x入的信息裝入兩個(gè)VECTOR中(v_identNumberv_name)。點(diǎn)擊“開始”按鈕進(jìn)行抽獎(jiǎng)操作。

          后臺(tái)的數(shù)據(jù)產(chǎn)生是利用JAVA的偽隨機(jī)函數(shù)。根據(jù)隨機(jī)數(shù)產(chǎn)生展現(xiàn)在前臺(tái)的字符,每次間隔的時(shí)間是0.05秒。

          用戶點(diǎn)擊“停止”按鈕,操作線程就掛起,這時(shí)產(chǎn)生相應(yīng)的中獎(jiǎng)號(hào)碼(即前臺(tái)展示的號(hào)碼),中獎(jiǎng)號(hào)碼存儲(chǔ)在v_printident中。v_printident同樣是VECTOR類型的。

          本系統(tǒng)設(shè)置的是將產(chǎn)生3個(gè)3等獎(jiǎng),2個(gè)2等獎(jiǎng),1個(gè)1等獎(jiǎng)還有一個(gè)特等獎(jiǎng)。系統(tǒng)將根據(jù)用戶點(diǎn)擊按鈕次數(shù)來確定產(chǎn)生幾等獎(jiǎng)。

          獎(jiǎng)項(xiàng)全部產(chǎn)生以后,點(diǎn)擊保存,可以將結(jié)果信息保存在當(dāng)前目錄下的result.txt中。

          關(guān)于暗箱的說明:

          基本說明:

          暗箱操作不是光明正大的行為,但是作為一個(gè)小小的研究對(duì)象,本人覺得還是有點(diǎn)意思。

          具體功能:

          可以實(shí)現(xiàn)對(duì)制定人員的獲獎(jiǎng)操作,可以實(shí)現(xiàn)對(duì)特等獎(jiǎng)的產(chǎn)生操作。

          實(shí)現(xiàn)機(jī)制:

          首先,用戶讀入指定獲獎(jiǎng)的人員文件,數(shù)據(jù)的格式為:姓名*號(hào)碼切記是(“*”,否則無法讀入)。在人員文件的最后一行,是控制中獎(jiǎng)力度的key,具體格式為“ *key”(切記前面要有一個(gè)空格鍵),如下圖:

          關(guān)于key的說明:

          Key的值可以設(shè)置110,如果沒有在這個(gè)范圍,系統(tǒng)將自動(dòng)設(shè)置key5

          系統(tǒng)的key設(shè)置得越大,指定人員的獲獎(jiǎng)概率就越大。具體公式:key/(總?cè)藬?shù)*指定人數(shù))

          如果key的值設(shè)置為10,系統(tǒng)將會(huì)產(chǎn)生特等獎(jiǎng),獲得者為制定人員的第一項(xiàng),但是除了特等獎(jiǎng),不會(huì)再對(duì)其他人員有任何操作(相當(dāng)于只能產(chǎn)生特等獎(jiǎng))。

          其他一些說明讀者自己去看程序,這里不再贅述。程序很簡單(在后面的):

          posted on 2008-08-13 17:20 志遙 閱讀(3481) 評(píng)論(4)  編輯  收藏

          評(píng)論:
          # re: Java模擬抽獎(jiǎng)程序[未登錄] 2008-08-13 17:28 | Ravili
          暗箱,哈哈 ,暗箱操作。  回復(fù)  更多評(píng)論
            
          # re: Java模擬抽獎(jiǎng)程序 2011-01-13 10:23 | 得到
          @Ravili
          當(dāng)?shù)?nbsp; 回復(fù)  更多評(píng)論
            
          # re: Java模擬抽獎(jiǎng)程序 2011-12-30 00:06 | peplemon
          怎么看不到程序  回復(fù)  更多評(píng)論
            
          # re: Java模擬抽獎(jiǎng)程序 2014-10-01 09:59 | tomson
          新手求源碼,謝謝  回復(fù)  更多評(píng)論
            

          只有注冊用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 鄯善县| 亚东县| 额敏县| 西乌| 阳春市| 长岭县| 江安县| 德钦县| 翼城县| 萝北县| 兴安盟| 霍州市| 农安县| 乌拉特后旗| 庆元县| 长子县| 内丘县| 新晃| 湖南省| 铁岭市| 临洮县| 德化县| 哈密市| 泰和县| 乌兰县| 济南市| 彭阳县| 锡林郭勒盟| 西吉县| 白城市| 罗江县| 祥云县| 红河县| 赤城县| 修水县| 增城市| 石棉县| 聂荣县| 昭觉县| 淮阳县| 舞钢市|