吕方方
摘 要:当算法作为重要内容被列入数学课程时,曾引起强烈的反响,有的教师认为这些内容缺乏“数学味”,属于信息技术的内容,而有些教师认为很有必要,针对“算法初步”的复习有以下几点建议:重难点再学习,提升知识理解力;构建知识网络,形成知识系统;抓住知识的本质,注重问题的变式;注重知识的综合应用。
关键词:算法初步;复习;建议
“算法初步”是新课改之后新加入高中数学的课程内容,观察发现,很多一线教师对于这部分内容的教学有畏惧心理,不知道对于这部分内容该如何去组织教学,而对于该部分的复习更是没有头绪,因此笔者结合自己在教学中的经验,对“算法初步”的复习提出以下几点建议,希望能够得到认可。
一、重难点再学习,提升知识理解力
本章的重点是体会算法的思想,理解算法的含义,能用自然语言、程序框图、程序语句正确地表示解决问题的算法,其中“体会算法的思想,理解算法的含义”是本章的重中之重,学生往往是学习完了本章内容却仍然不理解算法的含义与思想;难点是准确理解算法的思想与含义,并且能够正确分析解决问题的方法,恰当运用三种基本的逻辑结构画出程序框图,准确利用五种基本的算法语句设计出可执行的算法程序语句,进而顺利地解决问题。那么,对于该部分的重难点,教师要帮助学生进行重难点的再学习,以便学生在原有的认识结构上建构更深层次的认识结构,提升对算法知识的理解力。
二、构建知识网络,形成知识系统
构建知识网络有助于帮助学生形成一个系统的知识结构,使抽象的知识具体化、形象化,并且有助于帮助学生理清知识之间的从属关系以及联系,使松散的知识系统化、整体化。
对于该部分的知识结构,笔者将其归纳如下:
本知识网络尚不够详细,在实际的教学中,教师要指导学生自行绘制本章的更为详尽的知识网络结构,培养学生的归纳能力。在构建知识网络的同时,教师亦要帮助学生发现和查找本章所学知识的遗漏点,进行查漏补缺。
三、抓住知识的本质,注重问题的变式
在数学教学中,学习形式化的表达是一项基本要求,但是不能只限于形式化的表达,要强调对数学本质的认识。对于算法初步的教学,教师亦要专注算法初步中知识的本质,这有助于学生更有效地理解算法知识的内涵与本质,避免了知识学习的低效率和理解知识的表面化与片面化。例如对于循环结构的教学,教师应努力揭示循环结构的本质即循环条件和循环体,而不应该将教学的重点放在区分“当型循环”和“直到型循环”上。而对于循环结构的复习更是如此,教师应以经典案例为研究对象,努力揭示循环结构的本质。下面以案例说明:
例1.设计一个计算1+2+3+…+100的算法,并画出程序框图。
案例分析:
该例题是一个典型的算法案例,可以说是麻雀虽小,五脏俱全,涵盖了有关算法的所有基本结构,学生若弄清楚了该例题,那么对于算法的学习必将取得很大的进步。本案例注重考虑其中的循环结构,抓住其本质,即循环条件(i≤100?)与循环体(S=S+i,i=i+1),而对于其他有关循环结构问题的解决办法,大的框架不必变化,只需修改循环体与循环条件即可,例如:
(1)修改循环体
例2.设计一个计算12+22+32+…+1002的算法,并画出程序框图。
分析:对于该题的解法,只需修改例1中的循环体即可(其他部分不做变化),即将S=S+i修改为S=S+i*i,便可得到该题的算法,程序框图和程序代码做相应的修改即可。
例3 .设计一个计算1×2×3…×100的算法,画出程序框图,写
出程序。
分析:只需修改例1中的循环体与S的初值即可(其他部分不做变化),即将S=S+i修改为S=S*i,S的初值改为1,便可得到该题的算法,程序框图和程序代码做相应的修改即可。
例4.设计一个计算2+■+■+…+■的算法,画出程序框图,写出程序。
分析:只需修改例1中的循环体即可(其他部分不做变化),即将S=S+i修改为S=S+(i+1)/i,便可得到该题的算法,程序框图和程序代码做相应的修改即可。
(2)修改循环条件
例5.设计一个计算1+2+3+…+n的算法,画出程序框图,写出
程序。
分析:本例题是例1问题的一般化,解决的是一类问题,而例1是该题的具体化,解决的是单个具体问题。该例题亦可从例1的算法修改得到,只需在算法开始时加入一个步骤“请输入n的值”,然后将循环条件i≤100?修改为i≤n?,便可得到该问题的算法,程序框图和程序代码做相应的修改即可。
例6.设计一个计算n!的算法,画出程序框图,写出程序。
分析:本例题是例3的一般化问题,亦可从例3的算法修改得到,只需在算法开始时加入一个步骤“请输入n的值”,然后将循环条件i≤100?修改为i≤n?,便可得到该问题的算法,程序框图和程序代码做相应的修改即可。
(3)同时修改变量初始值、循环体和循环条件以及输入输出变量
例7.试画出秦九韶算法的程序框图,写出相应程序。
分析:表面上看该问题似乎与例1的关系不大,但实际上,秦九韶算法的程序框图亦可由例1的程序框图修改得到。我们可以和例1进行比较分析,通过比较分析可知,秦九韶算法的程序框图亦可由例1的程序框图修改得到。依然是大的框架几乎没有变化,只是修改了框架里面的文字内容。在此不做细述。
由此可知,对于循环结构的教学,教师要以经典案例为研究对象,努力揭示循环结构的本质,发现和挖掘问题的变式,从而帮助学生充分认识知识的内涵,这样更有利于学生的学习。
四、注重知识的综合应用
本章的知识是一个非常系统化的知识系统,阐述了解决问题的一般方法,即依据问题找出解决问题的方法(自然语言描述的算法),然后形成程序框图,再将程序框图翻译成计算机程序语言,最后在计算机上调试执行,最后得到问题解决的结果。其结构如图所示:
教师可以尝试组织综合实践活动,在现实生活中找到一些简单的问题,让学生按步骤进行算法与程序设计,并且上机实践,得到问题的结果。这样不仅可以在实际情境中帮助学生建构自己的知识结构,而且有助于增强学生的自我效能感、提高学生对数学的学习兴趣,并且形成良好的生活价值观。
(作者单位 山西省运城市垣曲县中条中学)