前言:想要寫出一篇引人入勝的文章?我們特意為您整理了高中地理選課分班派位系統設計實現范文,希望能給你帶來靈感和參考,敬請閱讀。
摘要:使用ExcelVBA可以很容易編寫出電腦派位分班系統,采用二次隨機,并加入家長抽簽互動流程,代碼易查看,實現公平的隨機派位分班,可解決分班過程中公平、合理的問題。
關鍵詞:高中地理分班;電腦派位分班;VBA程序設計
1設計背景
江蘇省2021年開始實行新的高考政策,考生選科組合人數最高的是物地生,其次是史地生、史地政,選考地理的考生人數達到了80%以上。一些規模比較大的學校,物生地的班級有幾十個,使用ExcelVBA可以很容易編寫出電腦派位分班系統,實現公平的隨機派位分班。
2設計思路
如圖1所示,第1步,將需要派位分班的學生信息收集完整,按照報名序號、姓名、性別及家長信息放入一個Excel表中,電腦派位分班原始信息收集完成;第2步,利用隨機函數給每個學生生成一個隨機號,這個隨機號是電腦隨機生成,采用程序控制,保證每個學生不同;第3步,通過擲硬幣或者找家長抽簽的方式,確定錄取的方式,兩種選擇會導致結果不相同;第4步,按照家長抽簽確定的順序排序派位分班為使程序更完善,采用了兩次隨機。
3程序制作過程
3.1制作加密動畫界面
打開Excel,打開VBA,插入一個窗體,加入美化的圖片,一般為學校的大場景照片。給窗體設置密碼,用戶驗證密碼后,窗體設置5秒倒計時消失。
3.2主窗體設計
3.2.1準備學生的原始數據將需要派位分班的學生信息收集后,按照報名序號、姓名、性別及家長信息放入Excel表中,這里加入了兩次生成隨機數,兩次排序,杜絕作弊。表頭加入第一次隨機、第二次隨機、錄取順序3列,后續操作出現的數據都在此3列。右側為操作區,基本功能都在此實現。
3.2.2查詢窗口的實現程序在派位的過程中,需要在每次操作的間隙,向家長展示個別學生的基本信息和生成的數據。在此做了一個查詢窗體,輸入學生的報名信息,查詢出相關的數據,實現的核心代碼如下:3.2.3生成不相同8位隨機數的實現此程序關鍵是實現給每個學生生成一個8位數的不相同的均勻分布的隨機數,為了實現此功能,程序使用了Scripting.Dictionary字典對象來實現此功能,Scripting.Dictionary組件創建了類似于Key索引對應Value值的字典對象,在其內部提供了快速索引訪問的機制,通過Key可以直接索引至指定的Value,比遍歷二維數組更加有效。核心代碼如下:EndSub
3.2.4按照生成的隨機數排序為保證公平公正,可由家長或者監督員抽簽或者擲硬幣確定排序順序。排序的核心代碼:繼續生成第二次隨機數,代碼復用,和第一次隨機數代碼類似,不再提供。
3.2.5確定錄取順序由家長抽簽,確定派位分班順序,確定順序后,點擊相應的按鈕,按照順序進行派位分班。派位完成后,名單保存導出并打印,如果操作過程有誤,可以重置程序再次開始。
4結語
程序可自定義排位班級類別,派位班級人數,也可以加入多次排序,確保學生完全隨機。程序容易移植和擴展功能,不僅僅可用于高中地理分班,可廣泛應用于需要隨機搖號的各種入學、分班場景。采用ExcelVBA編寫程序和界面,代碼易公開,可以隨時接受檢查監督。和派位搖號流程相結合,杜絕人為因素干擾,可做到公開、公平、公正。
參考文獻
[1]省教育廳關于2021年擬在江蘇招生的普通高校本科專業(類)選考科目要求的公告[EB/OL].2019.
[2]張小剛.電腦派位錄取程序的原理及其編寫[J].中國教育信息化,2008,(22):60.
[3]任宇寧.基于ExcelVBA抽簽程序的設計與實現[J].電子技術與軟件工程,2018,(11):66.
作者:陳輝 單位:邳州市第四中學