《信息技术课程中的问题设计以“选择结构”一课为例》由会员分享,可在线阅读,更多相关《信息技术课程中的问题设计以“选择结构”一课为例(10页珍藏版)》请在金锄头文库上搜索。
1、信息技术课程中的问题设计 以“选择结构”一课为例-教育技术学论文信息技术课程中的问题设计 以“选择结构”一课为例 曹丽丽 (江苏省盐城中学,224001) 摘要:“选择结构”是教育科学出版社出版的高中信息技术选修教材算法与程序设计第二章第三节的内容。传统的教学方法是教师详细讲授基本语句,再举例说明选择结构的应用。这种教学模式把程序设计变成了语言学习,不利于培养学生的算法思想、创新意识和创新能力。基于问题教学法的“选择结构”的学习,由学生已经完成的顺序结构程序出发,引导学生分析算法中的破绽,通过生活中实例的类比,引出用“选择结构”解决判断类问题。 关键词:问题教学法选择结构教学案例 “选择结构”
2、是教育科学出版社出版的高中信息技术选修教材算法与程序设计第二章第三节内容,我采用问题教学法,由学生已经完成的顺序结构程序出发,引导学生分析算法中的破绽;通过生活实例的类比,引出用“选择结构”解决带条件的问题。这节课的教学目标是:(1)知识与技能。根据问题建立合适、正确的“条件”;理解选择结构的执行过程,并用其解决实际问题;培养学生的逻辑思维能力,促进学生对算法的理解。(2)过程和方法。以具体的问题为外驱力,通过教师的引导、学生的自主探究和协作学习,提高学生设计算法解决问题的综合应用能力。(3)情感态度与价值观。通过比较、探究、讨论、交流等多种教学活动,激发学生学习程序设计的兴趣和热情,感受编程
3、的乐趣,形成积极主动地学习信息技术的态度。 这节课的教学重点是使用If语句,掌握用选择结构程序解决实际问题;教学难点是对算法的理解,能根据实际问题写出程序代码。我通过设计有价值的、科学性的问题,让学生在解决问题的过程中,感受知识、领会知识、运用知识,最终白我构建知识。让学生摆脱被动地接受教师“灌输”的知识,把教学过程看成是学生独立自主地分析问题、解决问题的过程,从而让一切学习活动回归学习的本质。 一、初问承前启后 由学生已经接触过的教学问题引入,能比较容易分析出原有算法的缺陷。因为缺乏程序设计的相关知识,所以会产生强烈的解决问题的欲望,这种欲望会促使学生积极思考、收获较好的学习效果。在顺序结构
4、的习题课上,学生利用海伦公式,由已知的三角形三边计算出了三角形的面积。教师展示程序界面,让学生分别输入两组三角形的边长:3、4、5和3、4、8,观察程序的运行结果。 【问题1】当输入三边长为3、4、5时,运行输出面积为6;但是为什么输入第二组边长时运行出错呢? 生输入的第二组三条边长,不能构成三角形。 师对于不能构成三角形的三边长,计算面积还有意义吗? 生没有。 师那么,我们在根据三角形的三边计算面积前,首先要做什么工作? 生首先要判断已知的三边是否能构成三角形。如果可以构成三角形,那么用海伦公式来计算,否则就不需要计算。 【问题2】在程序设计中如何判断条件呢? 师下面先来看我们身边的事例。周
5、末的班级活动有两个选择:(对照流程图1说明)如果天气好,那么我们进行户外拓展运动,否则进行室内羽毛球比赛。 师如果我们进行户外拓展活动,那么在购票时同样面临两个选择。你知道是哪两个吗? 生 (解读流程图2)如果总人数达到10人,那么总票价打8折,否则不打折。 师If人数一10 Then票价一单价*人数*0.8 Else票价一单价*人数。 以日常生活中的事例引出“选择结构”的课题,并辅以流程图进行描述,帮助学生了解选择结构的执行是依条件择一而行的。在学生对流程图的描述过程中白然而然地引出ifthenelse这样的关键字,为后面阅读程序做好铺垫。 二、再问强化理解 教师再次抛出问题,让学生带着问题
6、读程序,加深对选择结构语句的执行过程的理解。然后,通过对比和相互讨论,让学生关注两种分支结构以及两种书写格式的不同。最后通过归纳总结,实现理论提升。 【问题3】下面有两段选择结构的程序,请大家用已有的英语知识和对表达式的理解模拟计算机运行,说出各程序段中变量m的值。思考并讨论以下两个问题: (1)每个程序段中有多个“=”符号,它们的含义是否一致? (2)对两个程序段进行横向和纵向的对比,体会各自的执行过程和书写格式的不同。 学生阅读并分析程序段,模拟计算机运行,回答每个程序段运行后变量m的值。教师根据学生对程序段的阅读、思考和讨论,引导学生分析程序结构:if引导的是条件,当条件成立时执行the
7、n后的一条或多条语句,否则(即条件不成立时)执行else后的一条或多条语句。 师生共同归纳总结:(1)条件即关系表达式中的“一”是相等的含义,运算结果是逻辑值。(2)根据行格式和块格式分析,四段选择结构中,段是单分支结构,段是双分支结构;在编写程序时可根据需要选用行格式或块格式。 三、追问巩固新知 教师应用“半成品加工策略”,出示顺序结构中已经完成的三角形面积的求解程序,根据循序渐进的原则,设置一个较简单的任务,需填写的语句位置固定,学生只需关注条件和语句的具体内容即可。 【任务一】完善“三角形面积. frm”的程序,弥补已有程序的不足,请填写在横线上。 Private Sub cmdarea
8、_Click() Dim a As Single Dim b As Single Dim c As Single Dim p As Single Dim s As Single a - Val(InputBox(“input a”) bVal(InputBox(“input b”) cVal(InputBox(”input c”) If _Then p- (a+b+c)/2 s - Sqr(p*(p-a)*(p-b) * (p-c) Print s _ Print”不能构成三角形” End Sub 教师巡视、指导。借用学生机演示学生完善的代码,对普遍存在的问题给予提示和纠正。对补充后的程序进行
9、再阅读,分析程序结构:当条件成立时,计算并输出面积,否则给出“不能构成三角形”的错误提示。条件成立时,执行then后的三个语句,这三个语句构成了一个语句块,帮助学生理解“语句块”的概念。 【问题4】以下程序的算法设计存在哪些不足?分组讨论并设计出更全面、更严谨的算法。 同样是一个已经完成的顺序结构程序:已知一元二次方程ax2 +bx+c一0的二次项系数a、一次项系数b和常数项c,计算并输出方程的两个解。 Private Sub cmdroot_Click() Dim a As Single Dim b As Single Dim c As Single Dim d As Single Dim
10、xl As Single Dim x2 As Single a - Val(InputBox(“input a”) bVal(InputBox(”input b”) c=Val(InputBox(“input c”) d=b*b 4*a*c xl=(-b+Sqr(d)(2*a) x2=(-b-Sqr(d)(2*a) Print xl, x2 End Sub 学生分组讨论原有程序的不足,给出以下补充:(1)如果b*b-4*a*c =O,那么方程有实数根,否则没有实数根,需给出“无实数根”的提示。(2)如果a0,那么该一元二次方程成立。(3)如果a=0且b0,那么该方程是一元一次方程。 【任务二】
11、完善“一元二次方程”程序:当a0时,在适当的位置上添加语句,补足对d0这一条件的讨论。学生白主完善程序。 任务二属于难度上的过渡,需要学生白主完成一个完整的双分支结构,对于条件判断的位置,很多学生容易出错。而通过这个任务的设置,学生自己发现问题、解决问题,成为知识的发现者,而不是被动的接受者。这里也可以让学生进行适当的讨论,在协作中提高分析问题、解决问题的能力。 【任务三】根据流程图,分析a-0和dO这两个条件之间的关系,在现有程序中插入a-0这一条件的双分支结构。 教师引导学生讨论这两个条件的关系,得出结论:a0是前提,所以对于d0这个条件的讨论应该包含在a0的情况下。当选择结构的某个分支中
12、,又包含有选择结构时,就构成了选择结构的嵌套。学生根据流程图,完善并调试程序。教师提示:在书写选择嵌套代码时,可采用缩进格式,以方便发现程序结构的问题。学生书写的程序如下: Private Sub cmdroot_Click() Dim a As Single Dirn b As Single Dim c As Single Dim d As Single Dim xl As Single Dim x2 As Single a - Val(lnputBox(“input a”) bVal(InputBox(“input b”) c - Val(InputBox(“input c”) If aO
13、 Then If bO Then X-c/b Print x End If Else db*b 4*a*c If d一O Then xl一(-b+Sqr(d/(2*a) x2= (-b Sqr(d(2a) Print xl, x2 Else Print”无实数根” End If End If End Sub 教师演示学生的程序,并引导学生对程序结构进行分析、对程序中出现的If、Then、Else进行配对。 条件a的讨论,使原有程序变成了选择结构的嵌套。学生在完成这个任务时,必须明确算法内容,先让学生对照流程图分析出两个条件的关系,理解嵌套的缘由,理清嵌套语句的脉络。 通过对已有程序的再分析,结合具体问题和任务,利用选择结构的单分支、双分支及选择结构的嵌套语句对其进行再完善,让学生深刻地认识到设计算法时一定要注意逻辑性要严密、考虑问题要全面;设计程序时,条件判断位置要恰当,语句书写格式要规范。 四、转问:应用拓展 通过前几个任务和问题的训练学生已经掌握了程序设计的基本方法,为了检验学生的掌握程度,我决定设计拓展任务。向学生提供阅读材料:身体质量指数( BMI),是目前国际上常用的衡量人体胖瘦程度以及是否健康的标准,比单纯的以体重认定更具准确性。 BMI=体重(kg)身高(m)的平方。BMI18.5,表示体重过低;BMI介于18.523.9,表示正常体重;BMI23.9,表示肥胖。