APP下载

信息技术加试题解题思路与技巧

2018-04-19钱焕春

考试周刊 2018年36期
关键词:新高考信息技术

摘 要:2014年浙江省出台新高考方案,算法与程序设计作为高中信息技术其中一个重要环节,在四次选考后已经引起师生的充分重视。本文根据笔者对新高考模式下的教学经历,在算法与程序设计的解题技巧提出自己的想法和体会,与各位同仁交流探讨,希望能对您有所启发,从而提高我们的教学水平,一起做好高中信息技术教学的相关工作。

关键词:新高考;信息技术;加试题;算法与程序设计

一、 技术选考,困境重重

通过2015年10月与2016年4月及2016年10月、2017年4月四次选考后,明显发现学生对加试题部分(算法与程序设计)的得分普遍不高,尤其是最后16、17两个加试题,学生基本上是颗粒无收,能答出两空以上的学生已经是非常不错了。如何提高学生在加试题上的得分率是我们信息技术教师需迫切解决的问题,笔者就本人在教学中的一些经历和想法与大家探讨。

二、 明确思路,有的放矢。

(一) 仔细审题,戒骄戒躁

在解算法与程序设计题时,除了要有扎实的基础,在应试时还要认真仔细,沉着应考,切忌急躁。高考卷中的加试题基本上都要对基本语句进行再加工,进行微调,如果不细心读题,容易犯经验主义错误,掉入出卷专家的陷阱中。如例1(2016年4月高考加试11题)使用排序算法解题,粗粗一看以为是冒泡算法,其实不然,出卷专家在本题中出了两个陷阱:1.外循环范围是1 to 2,而不是1 to 4;2.在两两比较的过程中不是a(j)和a(j-1)比较,而是在比较的过程中每一次都和i位置的值比较。在答题时稍一粗心,就会弄错算法,导致解题错误。

数组元素a(1)到a(5)的值依次为“33,24,45,16,77”,经过该程序段“加工”后,数组元素a(1)到a(5)的值依次为

A. 77,45,33,16,24B. 77,33,45,16,24

C. 77,24,45,16,33D.77,45,33,24,16

又如例2所示,如果审题不清,误把题目要求的“至少查找次数”理解为最多查找次数,会想到通过公式int(log2n)+1求解得到答案C,而正确答案为B。

例2 [加试题]使用对分查找对22个有序数组成的序列进行查找,查找失败时关键字比较次数至少需要为

A. 3次B. 4次

C. 5次D. 6次

以上两例充分反映了审题的重要性,审题不清求出的答案似是而非,费时费力,做无用功。

(二) 明确过程,切忌空想

在解析算法与程序设计题时,经常出现循环语句,在推导时步骤繁多,如果只是自己脑中想想,很容易遗忘步骤,导致解题错误。因此充分利用草稿纸,记录算法运行过程,记录代码中的变量变化情况,联系前后文进行解题是非常必要的。

我们的方法是做一张表格,把步骤记录在表格中,每一行表示一遍循环,把算法的过程写清楚。如上面“例1”中要求解加工后的元素排列顺序,我们做如下表格:

通过表格能很清晰得到答案,又如上题“例2”中求对分查找失败至少查找次数,也是要把代码运行过程进行演示推到,通过推导对分查找过程得到答案:

对分查找失败的条件时i>j,通过推导,我们可以发现查找到第4次时,第1个数i和j的位置相等,如果未查找到key值,那么就表示查找失败,从而得出查找失败至少查找次数为4次。

(三) 熟读题目,理出步骤。

算法与程序设计中16、17题往往题目描述较长,而考试时间有限,学生匆匆读完题目后再解读代码时往往已经忘了题目要求是什么,又要反复读题,非常浪费时间和精力。所以我们要求学生在读题时把题目要求步骤化,找出重点内容,精简描述,列出算法步骤,提升读代码时的效率。如下题所示:

我们首先要分析算法,通过题意我们可以读出以下算法过程:

步骤1.N个房间,第i个房间住a(i)人;

步骤2.选择一个初始房间,接着每个人按照顺时针走到相邻的房间;

步骤3.每走过一个房间消耗一点能量,计算消耗能量的和;

步骤4.比较是否最少消耗,是输出结果,不是返回步骤2。

通过分析我们可以得出算法为枚举,1步骤赋值;2~4步骤循环;3步骤累加;4步骤比较大小。本题要求是计算每个初始房间能量消耗,比较能量消耗得到消耗最少的组合。

(四) 拆分代码,从繁到简

算法通过程序实现,我们解题过程就是分析代码对应相应的算法步骤,把相关代码的功能与算法步骤对应起来,把整个程序代码分为多个小的代码段,减轻读题难度。对题目不做要求代码猜出功能后可以跳过,这样可以节省时间,对于高考来说时间是非常宝贵的。上题的程序代码如下图所示:

通过分析:①所对应的程序代码段是算法中的步骤3;②所对应的程序代码段是算法中的步骤4;③所对应程序代码段是算法中的步骤2。明确每段程序要完成的功能后,对应算法步骤拆分程序段,分步解决问题。

(五) 题意释变,推导变量。

算法与程序解题必须了解各个变量的功能,可以通过题意要求和代码上下关系,推导变量功能,助推解题过程。如上题的代码过程:

1.因为Text2.Text输出为最小能耗,所以通过ans变量推出t变量为当前能量消耗总和;

2.因为Text1.Text输出为最小能耗的初始房间号,所以通过k变量可推出i变量为初始房间号;

3.通过w=i+j和t=a(w)*j两个语句可以推出j变量表示初始房间后第几个房间,w变量为下一个房间编号。

推导出各個变量的功能,整个程序的解题过程完成一半,接下来是使用具体的方法来进行解题。

三、 巧用方法,事半功倍。

(一) 数值代入,考虑特殊

在程序解题过程中,我们经常可以考虑算法程序的极端情况,代入一些特殊数值进行求解,往往会起到奇效,可以把题目中的特殊问题表现出来,有助于快速解题。

例如上题中因t变量为消耗总量,为累加语句,所以第二空我们可以得到答案为累加语句t=t+a(w)*j;而第一空处我们就要使用特殊数值代入分析问题,假设一共有5个房间,如果初始房间号为最后一个房间5,执行代码w=i+j后下一个房间编号应该为6,而实际房间号为1,不符合算法要求,超出总房间数后应该取余,所以可以得到正确的代码为w=(i+j)mod n。这与计算今天过后下一天是星期几的解题方法一样,相应的单位个数内循环运行可以使用取余的算法实现。

(二) 明确下标,理清过程。

加试题中经常出现的考点是“数组”应用,要求学生对数组及数组下标的关系非常清楚,如果学生在解题过程中对数组和对应的值不明确,就不知如何去解题。在2016年4月、10月、2017年4月的加试题中都涉及了数组的应用。

第①部分中下标i表示的是从0分到100分,从下标推出第一部分的功能是对A数组赋初值为0,表示每个分数没有1个对应的学生;第②部分中下标i表示第1位到最后一位学生,该部分的功能是统计A数组中每个分数的学生数(计数语句A(?)=a(?)+1),所以要找出学生和分数的关系,通过代码得知在sscore()数组中存储的就是每位学生的分数,可以得到答案是:A(sscore(i))=A(sscore(i))+1;而第③部分中i表示的是100分到0分,而根据题目中要求可得数组A+数组B为下一分数的名次,可以得到答案为mc=A(i)+B(i)。

数组在程序代码中经常出现,我们在解题的过程中应该重点分析数组下标及对应的内容关系,培养学生良好的解题习惯,提升学生解题思维。

(三) 上下关联,推导结果。

算法程序代码是相关联的,在解题的过程中不一定要通读代码,可以通过上下语句的关联性,推导出所需要的答案。通过这种方法可以大大节省时间,提高答题效率。例如求解2016年10月份的第17题:

[加试题]小李与小王合作编写一个成绩统计的VB程序:小王编写一个过程,该过程从数据库读取某一指定科目的相关数据,存储在数组a;小李编写一个过程,该过程依据数组a中的相关数据统计各班平均分。小李与小王约定的数据a各元素含义如图所示。

在求解第1空时,我们从第2行代码(p=n+2)中发现n没有赋初值,所以这一行代码应该为n的赋值语句,而赋的值是什么,我们可以在分析题意时知道n=a(1)。在求解第2空时,我们从代码(aver=sum/a(i-1))中推出sum为求和,所以第2空应该是一句累加语句:sum=sum+a(?),而a数组的下标具体是什么我们可以通过下1计数语句(p=p+1)中得到,该语句在代码的其他位置都没有用到,所以肯定在第2空中用到了p变量,那么第2空语句应该是sum=sum+a(p),最后代入数值求证结果是否正确。

通过各种解题方法的组合使用,可以有效地提高学生解题效率,节约解题时间,提升解题正确率。

四、 与时俱进,学习提高。

新高考模式下算法与程序设计属于加试题,是学生成绩的拉分点,也是学生难以掌握的知识点,如何提高学生的得分率,使得学生考出理想的成绩,是我们教师的责任和挑战。本文笔者对应自己的教学经验,通过夯实基础,归纳总结,仔细审题,明确过程,熟读题目描述,理解算法思想;对照算法思想,逐条找出对应的程序代码,前后关联,解释变量的过程分析代码。通过数值代入,一般問题特殊化,通过上下关联,推导结果等方法逐步分解加试题,把难题分解为最基本的学生理解的结构,最终解出答案。这是笔者对加试题解题方法的一些想法和实践,其中有很多不足及不对之处,希望各位读者能加以指正,同时希望其中某点方法可以和读者产生共鸣。

参考文献:

[1] 浙江省新课改高考方案.浙江省人民政府网.http://www.zj.gov.cn

[2] 《走进高中新课程》编写组.走进高中新课程[M].华中师范大学出版社.

[3] 《同步优化 信息技术》一课一练[M].浙江教育出版社.

[4] 2015年10月、2016年4月、2016年10月、2017年4月技术真题卷.

作者简介:钱焕春,浙江省杭州市,浙江省杭州市富阳区新登中学。

猜你喜欢

新高考信息技术
新一代信息技术征稿启示
新一代信息技术征稿启示
新一代信息技术征稿启示
新一代信息技术征稿启示
新一代信息技术征稿启示
信息技术在幼儿教育中的有效应用
新高考来了,家长该做些什么?
浙江新高考化学《有机推断与合成综合题》的特点分析与复习策略
浅析新高考改革
新高考方案下高一化学课堂教学改进策略