蔡毅
摘要:抽簽是羽毛球競賽中最重要的環(huán)節(jié)之一,電腦抽簽可大大提高抽簽效率,提高抽簽結(jié)果的科學(xué)性和合理性。該文闡述了以c#為開發(fā)工具,開發(fā)羽毛球競賽抽簽軟件,實(shí)現(xiàn)了羽毛球競賽單項(xiàng)抽簽和批量抽簽功能。
關(guān)鍵詞:c#;羽毛球;體育競賽;抽簽
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A
文章編號:1009-3044(2019)30-0085-02
1背景
羽毛球是我國群眾最喜愛的體育運(yùn)動項(xiàng)目之一,隨著國家全民健身戰(zhàn)略的實(shí)施,各種規(guī)模各種類型的羽毛球比賽越來越多。在羽毛球比賽中,抽簽是最重要的環(huán)節(jié)之一。羽毛球比賽抽簽方式有手工抽簽和電腦抽簽兩種,手工抽簽的優(yōu)點(diǎn)是現(xiàn)場直觀,參賽選手或單位充分參與,抽簽結(jié)果公正無疑義,但是需要的投入的人力物力較多,為了防止“抽死”,抽簽過程中需要加以控制;電腦抽簽方便快捷,無需人為控制,省時(shí)省力。筆者以“羽毛球比賽抽簽”為關(guān)鍵詞檢索文獻(xiàn),對于羽毛球比賽抽簽的研究很少;通過搜索引擎檢索,也未發(fā)現(xiàn)有羽毛球抽簽軟件可以下載。因此,充分利用現(xiàn)代軟件工程技術(shù),研發(fā)羽毛球競賽抽簽軟件,具有相當(dāng)重要的實(shí)用價(jià)值。
2系統(tǒng)分析與設(shè)計(jì)
關(guān)于羽毛球比賽抽簽的方法和原則,《羽毛球競賽規(guī)則》有明確的規(guī)定。種子首先進(jìn)入規(guī)定的位置,1號種子進(jìn)入淘汰表的頂部,2號種子進(jìn)人淘汰表的底部,3、4號種子抽簽分別進(jìn)入余下的兩個(gè)1/4區(qū),5至8號種子抽簽分別進(jìn)人余下的1/8區(qū),9至16號種子抽簽分別進(jìn)入余下的1/16區(qū)。種子抽簽完成后,進(jìn)行非種子選手的抽簽。非種子選手抽簽,同屬一個(gè)隊(duì)的運(yùn)動員,應(yīng)按均勻分布的原則,用以下辦法依次抽進(jìn)1/2、1/4、1/8...區(qū):第1、2號選手,分別進(jìn)入不同的1/2區(qū);第3、4號選手,分別進(jìn)入余下的1/4區(qū);第5至8號選手,分別進(jìn)入余下的1/8區(qū);同一隊(duì)第9號以后的選手,進(jìn)入余下的任意1/16區(qū)。
基于上述原則,在系統(tǒng)研發(fā)的內(nèi)部流程設(shè)計(jì)中,首先進(jìn)行種子抽簽,然后再進(jìn)行非種子抽簽,同時(shí)抽簽結(jié)果必須完全符合隨機(jī)性和合理性的原則。
2.1開發(fā)工具選擇
本系統(tǒng)采用微軟公司C#作為開發(fā)工具。c#是一種安全的、穩(wěn)定的、簡單的、優(yōu)雅的,由C和C++衍生出來的面向?qū)ο蟮木幊陶Z言,它在繼承C和C++強(qiáng)大功能的同時(shí)去掉了一些它們的復(fù)雜特性,C#綜合了VB簡單的可視化操作和c++的高運(yùn)行效率,以其強(qiáng)大的操作能力、優(yōu)雅的語法風(fēng)格、創(chuàng)新的語言特性和便捷的面向組件編程的支持成為.NET開發(fā)的首選語言。
2.2系統(tǒng)設(shè)計(jì)目標(biāo)
系統(tǒng)需要實(shí)現(xiàn)支持單項(xiàng)抽簽和批量抽簽功能。對于單項(xiàng)抽簽,系統(tǒng)通過讀取待抽簽的Excel表格,提取數(shù)據(jù)到主界面,然后對運(yùn)動員名單進(jìn)行隨機(jī)抽簽,抽簽結(jié)果可保存為Excel文件;對于批量抽簽,用戶分別選擇待抽簽文件存放的文件夾和抽簽結(jié)果存放文件夾,系統(tǒng)依次讀取待抽簽文件夾內(nèi)的文件,抽簽完成后自動輸出到抽簽結(jié)果文件夾,整個(gè)過程自動完成,無需人工干預(yù)。
3系統(tǒng)實(shí)現(xiàn)
3.1待抽簽名單整理
抽簽前,需要按競賽項(xiàng)目整理好待抽簽名單,每個(gè)項(xiàng)目一個(gè)Excel表格。表格格式和內(nèi)容如圖1所示。
3.2啟動抽簽軟件
系統(tǒng)安裝完成后,單擊桌面的“羽毛球比賽抽簽”圖標(biāo)即可啟動軟件,軟件啟動后的界面如圖2所示。
3.3單項(xiàng)抽簽
單擊“導(dǎo)入抽簽數(shù)據(jù)”按鈕,選擇待抽簽的Excel文件,系統(tǒng)自動讀取運(yùn)動員名單到主窗口中。單擊“開始抽簽”按鈕,系統(tǒng)執(zhí)行抽簽操作,并把運(yùn)動員的位置號填寫到“抽簽位置”欄中,如圖3所示。
單擊“保存到Excel”按鈕,可以把抽簽結(jié)果保存到Excel文件。
3.4批量抽簽。
勾選“批量抽簽”復(fù)選框,單擊“選擇”按鈕選擇待抽簽文件夾以及輸出文件夾,再單擊“開始抽簽”按鈕。系統(tǒng)自動讀取待抽文件夾的所有文件,抽簽后把抽簽結(jié)果自動保存到輸出文件夾中。
4系統(tǒng)特點(diǎn)和應(yīng)用
本系統(tǒng)可進(jìn)行單項(xiàng)抽簽或批量抽簽;待抽簽名單可設(shè)種子或不設(shè)種子,種子數(shù)量在規(guī)則允許的范圍內(nèi)任意設(shè)定(可以是非2的乘方,例如可設(shè)3個(gè)或5個(gè)種子)。批量抽簽時(shí),抽簽結(jié)果文件在原文件名后面自動添加“—抽簽結(jié)果”后綴。
本系統(tǒng)在多個(gè)國家級以及省、市級比賽中應(yīng)用,抽簽結(jié)果準(zhǔn)確合理,抽簽效率高。
5結(jié)束語
羽毛球抽簽軟件大大提高了羽毛球競賽的抽簽效率,提高了科學(xué)性和合理性,可適用于各種規(guī)模的羽毛球比賽。目前系統(tǒng)僅支持淘汰賽抽簽,在后續(xù)研發(fā)中擬加入分組抽簽功能,以使系統(tǒng)更完善。