999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于JavaScript的一種隨機抽取程序設計

2015-09-28 05:04:27許朋許清媛
現代計算機 2015年33期
關鍵詞:界面程序效果

許朋,許清媛

(1.工業和信息化部電子第五研究所,廣州 510610;2.中山大學南方學院電子通信與軟件工程系,廣州 510970)

基于JavaScript的一種隨機抽取程序設計

許朋1,許清媛2

(1.工業和信息化部電子第五研究所,廣州510610;2.中山大學南方學院電子通信與軟件工程系,廣州510970)

0 引言

為保證某項活動的公平、公正,經常需要從一定量數據中隨機抽取一個或多個數據。例如,在項目招標評審過程中,為了保證評標的公平性,需要從專家庫中隨機抽取若干個評標專家[2];在中小客車牌照搖號,隨機從眾多申請者中抽取一部分人;為避免考試試題的泄露、保證考試的公平性,需要在臨近考試前從海量試題庫中隨機抽取若干道試題形成考試試卷[3];在抽獎晚會上,從所有參與人員中隨機抽取若干個中獎人等。在這些抽取活動中,大多需要在公開場合進行隨機抽取。傳統上可能采用人工隨機抽取的方法,例如抓鬮等。然而,人工隨機抽取大多存在工作效率低、管理不規范、隨機性差、容易作弊、公平性低等缺點[2]。由計算機實現隨機抽取則可以克服這些缺點和問題。

JavaScript語言是一種直譯式、弱類型、基于原型的腳本語言[1]。它的解釋器JavaScript引擎是瀏覽器的一部分,JavaScript腳本通過嵌入在HTML網頁中來實現自身的功能,已被廣泛用于Web應用開發中[1],為網頁添加各式各樣的動態功能,為用戶提供更流暢美觀的瀏覽效果[1]。本文將介紹一種基于JavaScript腳本語言在客戶端實現隨機抽取的程序設計思路,說明其實現方法、證明其隨機性。

1 隨機抽取程序設計

隨機抽取的程序可按照圖1所示流程設計:

(1)將待抽取的所有數據(如所有參與中小客車搖號的人)組織起來,存放在“待抽取數組”中;

(2)點擊開始抽取后,每隔足夠短的時間隨機選擇“待抽取數組”中的一個元素在界面上顯示,形成被選中元素(數據)在界面上快速刷新顯示(閃爍)的效果;

(3)點擊停止抽取后,界面停止閃爍后顯示的數組元素作為被抽中的一個數據,將該數據保存“抽取結果數組”中;

(4)將被抽中的元素(數據)從“待抽取數組”中刪除;

(5)判斷“抽取結果數組”中抽取數據的數量是否滿足要求,若滿足要求則終止程序;若不滿足要求,則在“待抽取數組”不為空的情況下繼續下一次抽取,直到抽取數據的數量是否滿足要求為止。

在該隨機抽取程序設計中,為滿足抽取的隨機性要求(即每個元素(數據)被抽中的概率相等),需要滿足一下要求:

(1)每次抽取“待抽取數組”中的一個元素在界面上顯示時都要隨機抽取;

(2)要間隔足夠短的時間(小于人的反應時間)抽取下一個元素(數據)并顯示在界面上,形成被抽取元素(數據)在界面上快速切換的效果,避免因人為選擇某個元素(數據)而影響最終抽取結果的隨機性。

圖1 隨機抽取程序流程圖

2 程序實現分析

(1)隨機抽取“待抽取數組”中數組元素的實現

隨機抽取“待抽取數組”中的數組元素可通過隨機選取數組元素的下標來實現。就JavaScript語言來說,可使用 Math.random()方法和 parseInt()方法實現[1]。Math.random()方法可隨機產生大于等于0.0且小于1.0的浮點數,parseInt()方法可實現浮點數的取下整運算。假設ArrayLength表示 “待抽取數組”的長度,則parseInt(Math.random()*(ArrayLength))可得到隨機選取的“待抽取數組”的下標。

需要注意的是,parseInt()方法是取下整,而不是四舍五入取整,若使用四舍五入取整(如Math.round()),則每個“待抽取數組”下標被選中的概率就不相等。

(2)“待抽取數組”的元素在界面上快速刷新顯示和停止刷新的實現

“待抽取數組”的元素在界面上快速刷新顯示和停止刷新,可使用JavaScript語言的setInterval(,)方法和clearInterval()方法實現[1]。使用setInterval(,)方法可實現每隔若干毫秒執行一次界面刷新操作,進而實現“待抽取數組”的元素在界面上快速刷新顯示的效果。clearInterval()方法可停止界面刷新,進而得到被隨機抽中的元素(數據)。

其中,setInterval(,)方法可實現每隔若干毫秒執行一次界面刷新操作,只要界面刷新的時間間隔足夠小,則可避免人為去選擇某個元素(數據),進而可保證最終抽取結果的隨機性。

3 程序實現實例

基于以上的隨機抽取程序設計和程序實現分析,

給出了從數據“001,002,003,004,005,006,007,008,

009,010,011,012,013,014,015”中隨機抽取幾個數據

(小于15個)的JavaScript程序實現:

將該程序代碼放在.html中 (可放在.txt文檔中并修改后綴為.html來實現),使用IE瀏覽器運行該.html文件,可觀察該隨機抽取程序的實現效果。圖2給出了該程序的實現效果,點擊【開始】時,程序每次隨機選取“001,002,003,004,005,006,007,008,009,010,011,

012,013,014,015”中的一個數據顯示并進行快速更新,點擊【停止】時,程序將最后顯示的數據展現在界面上,實現了隨機抽取。

圖2 隨機抽取程序實現效果圖

4 結語

本文給出了一種基于JavaScript語言的隨機抽取程序設計方法,設計了程序實現的流程、分析了程序實現的關鍵點,并通過一個實例展現了隨機抽取程序實現結果。

[1]Nicholas C.Zakas.Professional JavaScript for Web Developers,Third Edition.John Wiley&Sons,Inc.2012.

[2]陳衛平.建設工程評標專家隨機抽取系統.科技信息,2010(09).

[3]劉旭旭.基于B/S模式的在線考試系統的設計與實現.醫藥與保健,2010,18(3).

Random Sampling;JavaScript;Program Design

A Random Sampling Program Design Based on JavaScript

XU Peng1,XU Qing-yuan2
(1.The 5th Electronics Research Institute of MII,Guangzhou 510610;2.Department of Electronic Communication&Software Engineering,Nanfang Colloge,Sun Yat-sen University,Guangzhou 510970)

1007-1423(2015)33-0063-04

10.3969/j.issn.1007-1423.2015.33.017

許朋(1985-),男,河南南陽人,碩士研究生,工程師,研究方向為應用軟件測試、嵌入式軟件測試

2015-11-06

2015-11-15

日常生活中經常需要從一定量數據中隨機抽取一個或多個數據。介紹一種基于JavaScript語言的隨機抽取程序設計方法,設計程序實現的流程、分析程序實現的關鍵點,并通過一個實例展現隨機抽取程序實現效果。

隨機抽取;JavaScript;程序設計

許清媛(1986-),女,江西興國人,碩士研究生,講師,研究方向為電子工程、程序設計

In daily life,one or more data is often needed to be randomly selected from a certain amount of data.Introduces a method to design a random sampling program based on JavaScript.The program flow chart is designed,analyzes the key points of programing,by an example,demonstrates the implementation effect of the random sampling program.

猜你喜歡
界面程序效果
按摩效果確有理論依據
國企黨委前置研究的“四個界面”
當代陜西(2020年13期)2020-08-24 08:22:02
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
迅速制造慢門虛化效果
抓住“瞬間性”效果
中華詩詞(2018年11期)2018-03-26 06:41:34
基于FANUC PICTURE的虛擬軸坐標顯示界面開發方法研究
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
人機交互界面發展趨勢研究
模擬百種唇妝效果
Coco薇(2016年8期)2016-10-09 02:11:50
主站蜘蛛池模板: 呦视频在线一区二区三区| 动漫精品啪啪一区二区三区| 精品无码日韩国产不卡av| 亚洲成AV人手机在线观看网站| 美女内射视频WWW网站午夜 | 人妻免费无码不卡视频| 97超爽成人免费视频在线播放| av大片在线无码免费| 国产手机在线ΑⅤ片无码观看| 麻豆国产原创视频在线播放| 无码AV高清毛片中国一级毛片| 日韩av电影一区二区三区四区 | 人禽伦免费交视频网页播放| 国产91无码福利在线| 精品三级网站| 亚洲欧美激情另类| 无码综合天天久久综合网| 日本午夜影院| 四虎精品国产AV二区| 97人妻精品专区久久久久| 国产主播在线一区| 国产精品久久久久久搜索 | 国产成人无码Av在线播放无广告| 日本尹人综合香蕉在线观看| 欧美国产综合视频| 依依成人精品无v国产| 亚洲日本中文字幕天堂网| 97精品久久久大香线焦| 玖玖精品视频在线观看| 一级黄色网站在线免费看| 日韩精品少妇无码受不了| 一级毛片免费的| 天天色天天操综合网| 亚洲精品高清视频| 中文字幕无码制服中字| 一区二区在线视频免费观看| 91精品专区| 久久人人妻人人爽人人卡片av| 国产网站在线看| 又猛又黄又爽无遮挡的视频网站| 乱人伦中文视频在线观看免费| 99久久精品视香蕉蕉| 无码AV日韩一二三区| 91精品国产自产91精品资源| 欧美日韩在线亚洲国产人| 亚洲欧美在线综合一区二区三区| 亚洲中文字幕精品| 囯产av无码片毛片一级| 99久久婷婷国产综合精| 久久久久久尹人网香蕉| 国产一区二区三区免费| 青青国产在线| 全免费a级毛片免费看不卡| 高清国产在线| 国产在线精彩视频二区| 麻豆精选在线| 成AV人片一区二区三区久久| 亚洲视频一区| 欧洲免费精品视频在线| 小说 亚洲 无码 精品| 欧美专区在线观看| 99偷拍视频精品一区二区| 999在线免费视频| 欧美日本一区二区三区免费| 91久久夜色精品国产网站| 国产一区二区在线视频观看| 欧美精品v欧洲精品| 日本人妻丰满熟妇区| 亚洲日本中文字幕乱码中文| 色精品视频| 亚洲欧美在线看片AI| 欧美国产在线看| 亚洲成人黄色在线| 亚洲无码37.| 亚洲视频欧美不卡| www.99精品视频在线播放| 久久国产精品麻豆系列| 亚洲视频欧美不卡| 国产福利在线观看精品| 国产电话自拍伊人| 五月婷婷伊人网| 久久99精品久久久久纯品|