王海峰 裴純禮
小學(xué)低年級(jí)數(shù)學(xué)教學(xué)中,教師和學(xué)生常需分別編寫和進(jìn)行大量的四則運(yùn)算練習(xí)。傳統(tǒng)的方法是使用練習(xí)卡片和百題測(cè)驗(yàn)等,教師要花費(fèi)大量的時(shí)間出題和判卷,學(xué)生則難于得到即時(shí)的反饋和修改。Excel軟件與小學(xué)數(shù)學(xué)的整合可以輕松解決上述弊端,既能幫助教師實(shí)現(xiàn)自動(dòng)出題、判卷和評(píng)分,也能幫助學(xué)生根據(jù)各自需求反復(fù)練習(xí),從而提高教學(xué)效率和效果。
基本任務(wù)描述——“四則運(yùn)算”工作簿的三大功能
在Excel中設(shè)計(jì)適于小學(xué)低年級(jí)師生的“四則運(yùn)算”工作簿,應(yīng)具有下列三個(gè)功能。
自動(dòng)命題功能
可實(shí)現(xiàn)無限次的自動(dòng)隨機(jī)出題,包括參與運(yùn)算的數(shù)字、運(yùn)算符和等號(hào);所有題目必須滿足一定的限制條件,如每次自動(dòng)編出100(或20)以內(nèi)的正整數(shù)加減和乘除運(yùn)算各10題,被減(除)數(shù)大于減(除)數(shù),除數(shù)不能為零和保證整除等;學(xué)生心算或筆算后輸入答案。
自動(dòng)批改判分功能
可根據(jù)師生需求,自動(dòng)批改學(xué)生所輸入的答案,自動(dòng)給出對(duì)錯(cuò)和最后得分;并允許學(xué)生對(duì)做錯(cuò)題目的答案進(jìn)行修改。
重復(fù)練習(xí)功能
可根據(jù)師生需求,自動(dòng)清除已輸入的答案等,從而實(shí)現(xiàn)對(duì)同一組題目的重復(fù)練習(xí)。
任務(wù)解決思路——“四則運(yùn)算”工作簿的基本設(shè)計(jì)思路
任何一位老師只要熟悉并能靈活應(yīng)用Excel的基本函數(shù)、公式和宏,即使沒有學(xué)過編寫計(jì)算機(jī)程序,都可以輕松制作能實(shí)現(xiàn)上述功能的工作簿。設(shè)計(jì)的核心思想在于隨機(jī)數(shù)據(jù)的獲取及其傳遞過程,據(jù)此進(jìn)行工作簿(工作表)結(jié)構(gòu)和功能的設(shè)計(jì)。
隨機(jī)數(shù)據(jù)獲取和傳遞的過程設(shè)計(jì)
首先,利用帶隨機(jī)函數(shù)RAND()的公式自動(dòng)輸入100(或20)以內(nèi)的隨機(jī)整數(shù),利用條件IF函數(shù)根據(jù)參與運(yùn)算數(shù)字的大小關(guān)系自動(dòng)輸入運(yùn)算符,以滿足100(或20)以內(nèi)正整數(shù)的加減運(yùn)算和乘除運(yùn)算各10題,被減(除)數(shù)大于減(除)數(shù)的限制條件。
其次,對(duì)原始數(shù)據(jù)進(jìn)行處理,使其不再隨機(jī)變化,并完全滿足出題的限制條件。這一過程分為兩步完成:⑴用“復(fù)制/選擇性粘貼(數(shù)值)”命令將隨機(jī)的原始數(shù)據(jù)轉(zhuǎn)換為常量數(shù)據(jù);⑵利用公式修正獲取的常量數(shù)據(jù),使除法運(yùn)算滿足除數(shù)不為零且能整除的要求。
最后,用“復(fù)制/選擇性粘貼(數(shù)值)”命令將處理好的數(shù)據(jù)轉(zhuǎn)換為四則運(yùn)算練習(xí)題。
工作簿的結(jié)構(gòu)與功能設(shè)計(jì)
工作簿由“四則運(yùn)算練習(xí)”和“隨機(jī)數(shù)據(jù)”兩個(gè)工作表組成。
“四則運(yùn)算練習(xí)”工作表是師生的主操作界面,包括四個(gè)交互區(qū):“運(yùn)算題目區(qū)”(顯示自動(dòng)生成的四則運(yùn)算題目)、“答案輸入?yún)^(qū)”(供學(xué)生輸入答案的區(qū)域)、“自動(dòng)批改區(qū)與自動(dòng)判分區(qū)”(顯示各題對(duì)錯(cuò)情況及最終的得分)和“操作按鈕區(qū)”(提供三個(gè)操作按鈕,)如圖1所示。
“隨機(jī)數(shù)據(jù)”工作表的作用是獲取隨機(jī)數(shù)據(jù),并根據(jù)出題的限制條件對(duì)數(shù)據(jù)進(jìn)行處理,包括三個(gè)數(shù)據(jù)區(qū):“原始數(shù)據(jù)”區(qū)(提供隨機(jī)產(chǎn)生的原始數(shù)據(jù)及運(yùn)算符)、“中間數(shù)據(jù)1”區(qū)(填寫由原始數(shù)據(jù)轉(zhuǎn)換成的常量數(shù)據(jù),由于隨機(jī)函數(shù)在每次計(jì)算工作表時(shí)都將返回新的數(shù)值,因而需要凝固其數(shù)值)和“中間數(shù)據(jù)2”區(qū)(填寫對(duì)常量數(shù)據(jù)修正處理,以滿足四則運(yùn)算要求的公式),如圖2所示。
工作表保護(hù)與指定單元格的鎖定
Excel工作表的默認(rèn)設(shè)置為取消保護(hù),其中各單元格默認(rèn)處于鎖定狀態(tài),總的效果是無保護(hù)與鎖定。如把“四則運(yùn)算練習(xí)”工作表設(shè)為保護(hù)狀態(tài),而其中要求學(xué)生輸入答案的區(qū)域設(shè)為解除鎖定狀態(tài),光標(biāo)將只能在上述解除鎖定的區(qū)域內(nèi)移動(dòng),從而可以有效保護(hù)工作表中其他數(shù)據(jù)區(qū)的內(nèi)容不被誤修改(作者注:只對(duì)Excel 2002及其以上版本起作用);類似地可設(shè)置“隨機(jī)數(shù)據(jù)”工作表的保護(hù)及其全部單元格的鎖定,以有效保護(hù)該工作表中的全部數(shù)據(jù)。
任務(wù)完成要點(diǎn)
“四則運(yùn)算”工作簿中的公式
“四則運(yùn)算”工作簿中隨機(jī)整數(shù)和運(yùn)算符的自動(dòng)輸入、原始數(shù)據(jù)的處理修正、答案的對(duì)錯(cuò)判斷、最終的判分等,都是靠靈活應(yīng)用Excel函數(shù)和公式實(shí)現(xiàn)的。
1.“隨機(jī)數(shù)據(jù)”工作表中的公式(表1)。
“中間數(shù)據(jù)1”區(qū)內(nèi)的常量數(shù)據(jù)(提示:由復(fù)制“原始數(shù)據(jù)”區(qū),并選擇性粘貼<數(shù)值>到“中間數(shù)據(jù)1”區(qū)獲得)可能在除法運(yùn)算中出現(xiàn)除數(shù)為零或不能整除的現(xiàn)象,因此,需要在“中間數(shù)據(jù)2”區(qū)中對(duì)相應(yīng)數(shù)據(jù)進(jìn)行修正。
2.“四則運(yùn)算練習(xí)”工作表中的公式(表2)。
“四則運(yùn)算”工作簿中的宏
宏是鍵盤與命令操作對(duì)應(yīng)指令的集合,存儲(chǔ)于Visual Basic Application模塊中。在Excel中執(zhí)行“工具/宏/錄制新宏”命令,在彈出的對(duì)話框中輸入宏名,選擇快捷鍵,軟件包就會(huì)自動(dòng)將用戶的操作組合錄制成宏,而不要求用戶必須具有VBA編程基礎(chǔ)。
本工作簿共錄制了三個(gè)宏,分別由批改判分、重復(fù)練習(xí)和重新命題三個(gè)功能的操作組合而成,并被分別指定給三個(gè)相應(yīng)的窗體按鈕(“對(duì)了嗎?”、“再來一次”和“重新出題”),師生可在需要時(shí)單擊相應(yīng)按鈕完成各自宏對(duì)應(yīng)的任務(wù)。
1.自動(dòng)命題的宏begin()(對(duì)應(yīng)“重新出題”按鈕)。
該宏的基本操作順序是:取消“四則運(yùn)算練習(xí)”工作表的保護(hù);選擇并清除輸入的答案、自動(dòng)批改的內(nèi)容和自動(dòng)判分;取消“隨機(jī)數(shù)據(jù)”工作表的保護(hù);將“原始數(shù)據(jù)”區(qū)運(yùn)算題目“復(fù)制/選擇性粘貼(數(shù)值)”到“中間數(shù)據(jù)1”區(qū);將“中間數(shù)據(jù)2”區(qū)運(yùn)算題目“復(fù)制/選擇性粘貼(數(shù)值)”到“四則運(yùn)算練習(xí)”工作表的運(yùn)算題目區(qū);分別保護(hù)“四則運(yùn)算練習(xí)”和“隨機(jī)數(shù)據(jù)”工作表。
2.自動(dòng)批改判分的宏judge()(對(duì)應(yīng)“對(duì)了嗎”按鈕)。
該宏的基本操作順序是:取消“四則運(yùn)算練習(xí)”工作表的保護(hù);輸入自動(dòng)批改和判分的公式;保護(hù)“四則運(yùn)算練習(xí)”工作表。
3.重復(fù)練習(xí)的宏repeat()(對(duì)應(yīng)“再來一次”按鈕)。
該宏的基本操作順序是:取消“四則運(yùn)算練習(xí)”工作表的保護(hù);清除輸入的答案、自動(dòng)批改的內(nèi)容和得分;保護(hù)“四則運(yùn)算練習(xí)”工作表。
repeat()宏的源代碼如下:
Sub repeat()
' repeat Macro
Sheets("四則運(yùn)算練習(xí)").Select'選中“四則運(yùn)算練習(xí)”工作表
ActiveSheet.Unprotect'取消“四則運(yùn)算練習(xí)”工作表的保護(hù)
Range("O2,F4:G13,M4:N13").Select'選擇自動(dòng)判分和兩個(gè)自動(dòng)批改區(qū)
Range("M4").Activate'當(dāng)前單元格
Selection.ClearContents'清除內(nèi)容
Range("F4").Select'選擇F4單元格
ActiveSheet.protect DrawingObjects:=True, Contents:=True, Scenarios:=True'保護(hù)“四則運(yùn)算練習(xí)”工作表
ActiveSheet.EnableSelection = xlUnlockedCells'選中未鎖定單元格復(fù)選框
End Sub
討論與總結(jié)
公式的表示
本工作簿中的許多公式可以有多種表示方法,建議讀者先按自己的邏輯思路輸入公式,再與他人交流,以打開自己的思路。下面給出幾個(gè)采用AND函數(shù)的公式表示方法:
J13:=IF(AND(G13="÷",H13<>0),INT(F13/H13)*H13,F13)
L13:=IF(AND(G13="÷",H13=0),1,H13)
G4:=IF(F4="","",IF(AND(C4="+",B4+D4=F4),"對(duì)",IF(AND(C4="-",B4-D4=F4),"對(duì)",IF(AND(C4="×",B4*D4=F4),"對(duì)",IF(AND(C4="÷",B4/D4=F4),"對(duì)","錯(cuò)")))))
宏的錄制與學(xué)習(xí)
在宏的錄制過程中,操作者的每一個(gè)操作動(dòng)作都將被宏記錄器所錄制,為了使宏簡(jiǎn)捷、實(shí)用,操作一定要精煉、準(zhǔn)確。初學(xué)者可對(duì)比操作步驟與宏的源代碼熟悉和學(xué)習(xí)宏的語句。
教育教學(xué)的深入應(yīng)用
建議有興趣的讀者設(shè)計(jì)保留學(xué)生每次答題、批改與評(píng)分結(jié)果的宏,以供教師進(jìn)行教學(xué)分析用。