论文部分内容阅读
小学低年级数学教学中,教师和学生常需分别编写和进行大量的四则运算练习。传统的方法是使用练习卡片和百题测验等,教师要花费大量的时间出题和判卷,学生则难于得到即时的反馈和修改。Excel软件与小学数学的整合可以轻松解决上述弊端,既能帮助教师实现自动出题、判卷和评分,也能帮助学生根据各自需求反复练习,从而提高教学效率和效果。
基本任务描述——“四则运算”工作簿的三大功能
在Excel中设计适于小学低年级师生的“四则运算”工作簿,应具有下列三个功能。
自动命题功能
可实现无限次的自动随机出题,包括参与运算的数字、运算符和等号;所有题目必须满足一定的限制条件,如每次自动编出100(或20)以内的正整数加减和乘除运算各10题,被减(除)数大于减(除)数,除数不能为零和保证整除等;学生心算或笔算后输入答案。
自动批改判分功能
可根据师生需求,自动批改学生所输入的答案,自动给出对错和最后得分;并允许学生对做错题目的答案进行修改。
重复练习功能
可根据师生需求,自动清除已输入的答案等,从而实现对同一组题目的重复练习。
任务解决思路——“四则运算”工作簿的基本设计思路
任何一位老师只要熟悉并能灵活应用Excel的基本函数、公式和宏,即使没有学过编写计算机程序,都可以轻松制作能实现上述功能的工作簿。设计的核心思想在于随机数据的获取及其传递过程,据此进行工作簿(工作表)结构和功能的设计。
随机数据获取和传递的过程设计
首先,利用带随机函数RAND()的公式自动输入100(或20)以内的随机整数,利用条件IF函数根据参与运算数字的大小关系自动输入运算符,以满足100(或20)以内正整数的加减运算和乘除运算各10题,被减(除)数大于减(除)数的限制条件。
其次,对原始数据进行处理,使其不再随机变化,并完全满足出题的限制条件。这一过程分为两步完成:⑴用“复制/选择性粘贴(数值)”命令将随机的原始数据转换为常量数据;⑵利用公式修正获取的常量数据,使除法运算满足除数不为零且能整除的要求。
最后,用“复制/选择性粘贴(数值)”命令将处理好的数据转换为四则运算练习题。
工作簿的结构与功能设计
工作簿由“四则运算练习”和“随机数据”两个工作表组成。
“四则运算练习”工作表是师生的主操作界面,包括四个交互区:“运算题目区”(显示自动生成的四则运算题目)、“答案输入区”(供学生输入答案的区域)、“自动批改区与自动判分区”(显示各题对错情况及最终的得分)和“操作按钮区”(提供三个操作按钮,)如图1所示。
“随机数据”工作表的作用是获取随机数据,并根据出题的限制条件对数据进行处理,包括三个数据区:“原始数据”区(提供随机产生的原始数据及运算符)、“中间数据1”区(填写由原始数据转换成的常量数据,由于随机函数在每次计算工作表时都将返回新的数值,因而需要凝固其数值)和“中间数据2”区(填写对常量数据修正处理,以满足四则运算要求的公式),如图2所示。
工作表保护与指定单元格的锁定
Excel工作表的默认设置为取消保护,其中各单元格默认处于锁定状态,总的效果是无保护与锁定。如把“四则运算练习”工作表设为保护状态,而其中要求学生输入答案的区域设为解除锁定状态,光标将只能在上述解除锁定的区域内移动,从而可以有效保护工作表中其他数据区的内容不被误修改(作者注:只对Excel 2002及其以上版本起作用);类似地可设置“随机数据”工作表的保护及其全部单元格的锁定,以有效保护该工作表中的全部数据。
任务完成要点
“四则运算”工作簿中的公式
“四则运算”工作簿中随机整数和运算符的自动输入、原始数据的处理修正、答案的对错判断、最终的判分等,都是靠灵活应用Excel函数和公式实现的。
1.“随机数据”工作表中的公式(表1)。
“中间数据1”区内的常量数据(提示:由复制“原始数据”区,并选择性粘贴<数值>到“中间数据1”区获得)可能在除法运算中出现除数为零或不能整除的现象,因此,需要在“中间数据2”区中对相应数据进行修正。
2.“四则运算练习”工作表中的公式(表2)。
“四则运算”工作簿中的宏
宏是键盘与命令操作对应指令的集合,存储于Visual Basic Application模块中。在Excel中执行“工具/宏/录制新宏”命令,在弹出的对话框中输入宏名,选择快捷键,软件包就会自动将用户的操作组合录制成宏,而不要求用户必须具有VBA编程基础。
本工作簿共录制了三个宏,分别由批改判分、重复练习和重新命题三个功能的操作组合而成,并被分别指定给三个相应的窗体按钮(“对了吗?”、“再来一次”和“重新出题”),师生可在需要时单击相应按钮完成各自宏对应的任务。
1.自动命题的宏begin()(对应“重新出题”按钮)。
该宏的基本操作顺序是:取消“四则运算练习”工作表的保护;选择并清除输入的答案、自动批改的内容和自动判分;取消“随机数据”工作表的保护;将“原始数据”区运算题目“复制/选择性粘贴(数值)”到“中间数据1”区;将“中间数据2”区运算题目“复制/选择性粘贴(数值)”到“四则运算练习”工作表的运算题目区;分别保护“四则运算练习”和“随机数据”工作表。
2.自动批改判分的宏judge()(对应“对了吗”按钮)。
该宏的基本操作顺序是:取消“四则运算练习”工作表的保护;输入自动批改和判分的公式;保护“四则运算练习”工作表。
3.重复练习的宏repeat()(对应“再来一次”按钮)。
该宏的基本操作顺序是:取消“四则运算练习”工作表的保护;清除输入的答案、自动批改的内容和得分;保护“四则运算练习”工作表。
repeat()宏的源代码如下:
Sub repeat()
' repeat Macro
Sheets("四则运算练习").Select'选中“四则运算练习”工作表
ActiveSheet.Unprotect'取消“四则运算练习”工作表的保护
Range("O2,F4:G13,M4:N13").Select'选择自动判分和两个自动批改区
Range("M4").Activate'当前单元格
Selection.ClearContents'清除内容
Range("F4").Select'选择F4单元格
ActiveSheet.protect DrawingObjects:=True, Contents:=True, Scenarios:=True'保护“四则运算练习”工作表
ActiveSheet.EnableSelection = xlUnlockedCells'选中未锁定单元格复选框
End Sub
讨论与总结
公式的表示
本工作簿中的许多公式可以有多种表示方法,建议读者先按自己的逻辑思路输入公式,再与他人交流,以打开自己的思路。下面给出几个采用AND函数的公式表示方法:
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),"对",IF(AND(C4="-",B4-D4=F4),"对",IF(AND(C4="×",B4*D4=F4),"对",IF(AND(C4="÷",B4/D4=F4),"对","错")))))
宏的录制与学习
在宏的录制过程中,操作者的每一个操作动作都将被宏记录器所录制,为了使宏简捷、实用,操作一定要精炼、准确。初学者可对比操作步骤与宏的源代码熟悉和学习宏的语句。
教育教学的深入应用
建议有兴趣的读者设计保留学生每次答题、批改与评分结果的宏,以供教师进行教学分析用。