刘俐伶
摘要计算机基础应用在实践中发挥着越来越重要的作用。但由于其中包括的知识较多,每本计算机书都只是各偏重点,很多东西是点到为止。下面结合我们实践中分班具体情况,列举图表实例来阐述Excel函数rank(),if(),mod()的用法。
关键词计算机教学excel2003分班
随着计算机的普及,对于计算机基础的教学越来越是一个挑战。因为学生仗着自己懂点基本的操作,很难集中精力学习。而计算机基础教材又不可能一一介绍所有函数的具体用法。因此也要求老师用一些常用函数结合实际来吸引学生的注意力。特别是举一些他们经常能听到的一些问题,比如我们在中学时学校是怎么来给我们分班的,我们能用我们的所学,科学地解决这个问题吗?这样引起学生的好奇从而集中到课堂上来,老师也因此切入课堂主题。
下面我们首先介绍一下excel2003中的重要函数rank(),if( ),mod( )的一般用法,然后举一个我们高中分班时的具体例子,让学生深切体会这些函数的重要性。从而提高学习积极性。
1 rank( )函数的用法
rank函数返回某数字在一列数字中相对于其他数值的大小排位。
语法:rank(number,ref,order)
其中:number为需要找到的指定排位数字。
Ref 为一组数或对一个数据列表的引用,若为非数字值参数将被忽略。
Order 为数字,指明排序方式。如果省略或为零时,按降序排列,非零时按升序排列。如下面实例当中省略了这个参数,默认按降序排列。
说明:rank()函数对重复的排位相同。而且将影响后续数值的排位。例如,在一列按降序排列的整数中,80出现两次,其排位为8,则79的排位为6,没有排位为7的数值。如果实际需要改变排位要求,请读者参考相关资料,这里不做阐述。
2 if( ) 函数的用法
if( )函数用于判断一个条件是否满足,如果满足返回一个值,如果不满足则返回另一个值。
语法:if(logical_test,value_if_true,value_if_false)
其中:logical_test表示计算结果为TRUE 或FALSE的任意值或表达式。
Value_if_true为第一个表达式logical_test为TRUE时返回的值。如果忽略,则返回TRUE,if函数最多可嵌套七层。
Value_if_false为第一个表达式logical_test为FALSE时返回的值。如果忽略则返回FALSE。
例如:if(5>3,1,2) 先判断“5>3”是否为真,如果为真,其值为“1”,否则为“2”,结果明显为“1”。
3 mod()函数的用法
Excel中mod函数是一个求余函数。返回两数相除的余数。结果的符号与除数相同。鉴于有符号及小数参数太复杂,这里只考虑正整数的情况。
语法:MOD(Number,Divisor)
其中:Number为被除数。
Divisor为除数。
例如:mod(9,2)值为1。
下面我们通过综合实例来体会这几个函数在实践中的具体运用。平时分班用excel2003函数具体解决问题步骤如下:
要解决的问题:高中学校在高二时要进行文理班的划分,然后再按成绩把高低分同学按比例分到不同的班级。一般是按总分名次来划分的:比如理科要分6个班,则第1名分到一班、第2名分到二班……第6名分到六班,接着第7名分到六班、第8名分到五班……第12名分到一班,一直这样循环,直到分完为止。
具体实施方法:首先将学生情况及成绩信息调入Excel工作表中,具体步骤:(1)以总分按降序排列,如下表,若总分在H列,第一名在第二行。(2)在名次列(即I列)中I2单元格输入公式:=RANK(H2,$H$2:$H$16)排出名次,并且向下填充1、2、3……(3)在班级列(即J列) J2单元格中输入公式:“=IF(MOD(I2,2*6)>6,6-MOD(I2,6)+1,(IF(MOD(I2,2*6)=0,1,MOD(I2,2*6))))”,用公式算出应分在哪一个班级。然后,按公式将每名学生自动填充上班级号(效果如表1所示)。
然后将每个工作表改名为一班、二班……六班,在每个班级工作表中复制和原表一样的表头,在原来的成绩表中用“自动筛选”按班级号筛出各个班级的学生,并将其复制到相应的各个班级工作表即可。见表2。
提示:以上公式中的“6”是要划分的班级个数,可以根据班级数的变化而修改,如果分成n个班级,则通用公式为:
“=IF(MOD(I2,2*n)>n,n-MOD(I2,n)+1,(IF(MOD(I2,2*n)=0,1,MOD(I2,2*n))))”
这个实例既把当天的重点内容涵括进去了,也增加了趣味性和知识性。而且结合了数学的应用,使学生再也不会轻视这门学科的重要性了。