瑞文文摘
返回首页 | 手机用户请点此访问手机版
关键字:教育 | 时间:2015/11/2 10:21:00

第三节《顺序结构的程序设计》教学设计

第三节《顺序结构的程序设计》教学设计
(一)教材分析
  教育科学出版社《算法与程序设计》(选修)模块第二章第三节《程序的基本结构》一共三课,本课选用的是第一小节《顺序结构》。众所周知,无论多么复杂的程序都可以分解为顺序、选择、循环这三种基本结构,因此本节内容的学习效果将影响后续章节的程序编写效率。
(二)教学目标
  1、知识与技能:理解程序设计的顺序结构基本思想;掌握顺序结构语句特点
  2、过程与方法:学会用算法分析问题;能够使用顺序结构编写简单的程序解决具体问题
  3、情感态度与价值观:体会用结构化方法解决数学问题的便捷性;明确结构化在程序设计中的重要作用;激励尝试使用多种方法解决问题;培养良好的编程习惯和态度。
  教学重点:理解程序设计的顺序结构基本思想
  教学难点
1、顺序结构实现语句的格式和功能
  2、编写简单的程序的过程 
  3、变量的特点
  
  二、教学方法
  任务驱动法、直观演示法、师生互动法、比较教学法
  
  三、学生分析
  课程改革之后,各学校立足于学校实际选开的选修模块各有不同。在没有选修《算法与程序设计》(选修)模块的情况下,对于高一的学生只在必修模块接触过一些关于程序设计的知识,而对于高二学生只有在数学必修模块三中有对算法及程序的描述。因此学生对于程序设计的知识还是相对匮乏的。因此,在学习设计的过程中,应弱化对于某一编程语言的学习,应更注重学生编程思想的培养。
  在让学生实践的环节,我安排了随堂笔记这一形式,让学生随着教学的不断深入,充分发挥自己的思维想象,让学生与教学的进度同步进行,最后能够较好的理解程序的基本结构这一思想,并能较为系统地了解算法分析的一般过程。
  
  四、教学过程
  一、导入
  在上课前,我故意引入一般人对程序的看法,设置悬念,引起学生的好奇心,勾起学生探索新鲜事物欲望。为拉近程序与生活的距离,举例说明生活中程序与生活的关系。
  
  二、以任务驱动展开教学
  以学生感兴趣的游戏形式展开,一起体验程序设计的过程.。学生从游戏中分析算法,本课设置了三个算法思路让学生分析。
  1、顺序结构的第一次亲密接触
  依照人的正常逻辑,必有学生想到直接互抛法来交换两个球的方法。引导学生分析算法,引出程序。由于算法1不是满足要求的算法,因此我先引出程序,再分析程序设计的过程。算法1是一个铺垫。这其中也涉及到顺序结构程序的语句描述。
  2、顺序结构的第二次亲密接触
  这是本课学生必须掌握的程序,因此让学生分析算法的同时,能够模仿算法1编写出算法2的程序。
  3、顺序结构的第三次亲密接触
  算法3是本节课的扩展知识,重在培养学生了解解决问题的多种思维方式,理解程序运行过程中变量值的变化,培养学生具有算法分析创新意识。
具体流程如下表:
课题程序与生活 ------ 顺序结构程序设计
教学目标
知识与技能? 理解程序设计的顺序结构基本思想
? 掌握顺序结构语句特点
过程与方法? 培养用算法分析问题的能力
? 能够使用顺序结构编写简单的程序解决具体问题
情感态度与价值观? 体会用结构化方法解决数学问题的便捷性
? 明确结构化在程序设计中的重要作用
? 激励尝试 使用多种方法解决问题
? 培养良好的编程习惯和态度
教学重点理解程序设计的顺序结构基本思想
教学难点1 、顺序结构实现语句的格式和功能 3 、变量的特点
2 、编写简单的程序的过程 
教学方法任务驱动法、直观演示法、师生互动法、比较教学法
教学过程教师活动学生活动设计意图
导入? 导入
[ 教师 ] :一直以来编写程序被认为是一项高深莫测的技术,精通这门技术常被冠以“软件工程师”的美名。难道程序设计真的就这么高不可攀吗?今天这节课我们一起走近程序的世界,揭开程序设计的神秘面纱。
[ 电子板书 ] : 程序总是围绕着人的生活需要而编写的。
举例说明引起学生的好奇心,探索新鲜事物欲望
联系实际,拉近程序与生活的距离



课? 新课
1 、 [ 教师 ] :今天同学们要设计的程序来源于一堂体育课的游戏。
[ 电子板书 ] : 有一次在上体育课的时候, a 同学想和 b 同学做一个换球的游戏,同学们能不能帮他们出出主意?
( 如 a 原来拿篮球, b 原来拿排球,交换后, a 拿排球, b 拿篮球 ) (图略)
游戏规则:要求每次交换只允许每人手中最多有一个球
2 、顺序结构的第一次亲密接触:
( 1 )依照人的正常逻辑,必有学生想到直接互抛法来交换两个球的方法。分析算法,引出程序
算法 1 直接互抛法 : Step1 : a( 或 b) 拿篮球
       Step2 : b( 或 a) 拿排球
       step3 : a 将篮球(或排球)给 b
       step4 : b 将排球(或篮球)给 a
? step5 :结束让两个学生先用简洁语言描述交换的过程,并演示以游戏形式展开讨论,学生的兴趣被调动起来。
限定交换规则为下面的算法 2 和算法 3 做铺垫

教学过程教师活动学生活动设计意图
算法1程序可描述为: Dim a as integer
          Dim b as integer
          a=1
          b=2
          a=b
          b=a
[ 教师 ] :请同学们对比算法 1 与算法 1 程序,你能猜猜程序每一行语句的含义吗?(提示 1 代表篮球, 2 代表排球, integer 为整型的意思)
( 2 ) 分析程序设计的过程的一般步骤。(图略)
A 、变量应该先声明后使用。
B 、 VB 的赋值语句
变量名 = 表达式
功能:计算右边的表达式的值赋给左边的变量,得出
a=1
b=2
a=b
b=a
( 3 )运行程序无结果。比喻程序没有发言权,要给装上一个一个发言功能。引出 print 语句。
A 、算法 1 程序完善如下:
……
a = 1
b = 2
Print “交换前 :a= ; a, b= ; b
a = b
b = a
Print 交换后 :a= ; a, b= ; b
B 、 让学生理解记忆,并将程序写到第一次亲密接触中
(4)运行程序不正确,设下疑点
[提问]:程序运行结果为什么会和我们交换的结果不一致呢?
[电子板书]:
变量的特点: 每个变量占用一个内存空间,有新的内容被送到这个变量中,旧的内容就被冲刷掉了。
结论: 程序运行结果不能满足要求,直接互抛法程序不成功。
? 顺序结构的第二次亲密接触:
[教师]:编写程序贵在有创新,而创新的关键就是算法,一种新的算法不亚于建造一种新的机型。引导学生进行算法2探讨。学生分析每一行程序对应的含义
学生操作运行程序,观察结果
做随堂笔记
学生立刻发现程序运行结果不正确
学生简洁说明交换过程,并模拟演示让学生对程序的格式有一个初步的印象,增强学生对程序编写的信心
算法 1 是不符合游戏规则的算法,因此直接给出程序,类似于语文中倒叙的方式,然后再分析
引入自然,加深印象
学生可以在默写的过程,理清程序的结构
激励教学法,使学生对学习充满期望和信心
教学过程教师活动学生活动设计意图



入(1)算法2 “ 第三人 ” 交换法:
Step1 : a( 或 b) 拿篮球, b( 或 a) 拿排球
step2 :输出交换前 a,b 的值
step3 :第三人 <- a( 或 b)
step4 :第三人 <- a( 或 b)
step5 : b( 或 a)<- 第三人
Step6 :输出交换后 a,b 的值
Step7 :程序结束

(2) [教师]:纵观整个算法,第三人扮演着什么角色?
小结: 第三人就像一个邮递员,
它是 a 和 b 换球的中转站
模仿第一次亲密接触的程序, 让学生将算法 2 程序写到第二次亲密接触中(教师随堂辅导)
(3)算法 2 程序如下 ( 传递变量 c) :
Dim a as integer
Dim b as integer
a = 1
b = 2
Print 交换前 :a= ; a, b= ; b
c = a
a = b
b = c
Print 交换后 :a= ; a, b= ; b
结论:小小“邮箱员”,交换真方便学生思考,并回答
学生自己模仿算法 1 程序编写算法 2 程序
学生观看教师演示,并思考了解中间变量作用,加深对程序的理解



展5、顺序结构的第三次亲密接触:
游戏规则 2 :允许某一瞬间有人可以同时拿着两个球
[教师]:有了前面两个程序编写的经验,同学们已经基本掌握了程序编写的过程。即分析问题,寻找算法,计算机识别模式转化,及程序语言编写程序的过程。同学们还能不能带给我们更多的惊喜呢?
算法较复杂,可引导学生从模拟的算法中,将提示的交换程序补充完整。
算法 3 近距离互换:
……
a=1
b=2
Print “交换前 :a= ; a, b= ; b
a=a+b
b=a-b
a=a-b
Print 交换后 :a= ; a, b= ; b
[ 教师 ] :分析交换过程 a,b 的值学生回答既是复述程序设计的过程,让学生记忆一个程序设计的概念,又能扩大学生的思维方式
算法复杂,学生可能无法想到,可以让学生描述程序在交换过程中变量 a,b 的值
理解程序的运算过程
总结[提问]:纵观上述三个程序,无论是算法1的程序,还是算法2和算法3的程序,从运行的结构上说都有一个共同的特点。从程序开始到程序结束,程序运行有没有出现某一行语句重复运行,或者某一行语句不执行的情况呢?
程序设计的顺序结构:
在程序执行过程中,语句按先后顺序一行一行执行,没有分支,没有重复,直到程序结束。学生回答通过三次体验顺序结构的程序设计,学生能够深刻理解顺序结构的基本思想
实践练习实践练习:
通过 Internet 查找有关“两变量值互换”的其它算法,进一步体验顺序结构程序设计的思想。培养学生对算法的探究精神




上一篇:《快乐的小木匠》教学实践与反思

下一篇:幼儿教育的人本化管理思路

Copyright © 瑞文软件工作室 冀ICP备17033643号 联系我们