您当前的位置:首页 >> 教学教研 >> 技术组 >> 教案课件
用循环语句解决一些共性问题
 

一、设计思想

赋值语句、选择语句和循环语句等基本语句的使用是程序设计的基础,而循环语句又是学生学习的一个难点,要突破这个难点,就必须使学生建立一种规则意识,把对问题和算法的认识用语句正确地表达出来。本堂课为了提高课堂效率,为学生第五章“算法实例的程序实现”学习垫定良好基础,忽略问题的实际情境创设,采用算法---语法---方法既符合程序设计思想又有助于学生获得方法的逻辑线,重点让学生在对结构化的共性问题的解决过程中,体会循环语句的特点,掌握两种语句的用法,从而使学生建立循环语句来实现算法的逻辑结构。

二、教材分析

本课的课程标准内容:(二)程序设计语言初步(1)理解并掌握一种程序设计语言的基本知识,包括语句、数据类型、变量、常量、表达式、函数。会使用程序设计语言实现顺序、选择、循环三种控制结构。

本课的《学科教学指导意见》内容:

基本要求:掌握常用赋值、选择、循环等基本语句的使用方法。

发展要求:学会使用编写顺序、选择、循环三种控制结构、实现简单的算法。

教材内容:第四章 VB程序设计初步 4.3.3循环语句,安排两个课时,第一课时是用循环语句解决一些共性问题,第二课时是用循环结构来解决实际问题,本教学设计为第一课时。

从《课程标准》和《学科教学指导意见》对本课教学内容的要求来看,要求学生能从问题出发,用循环语句实现简单的算法。对学生来说,理解循环语句用法的难度系数比赋值和选择语句要高得多,而本课从教材体系和学生认知结构来看,又起到了一个承上起下的作用,是学生程序设计学习一定要突破的一个瓶颈,所以为了使学生在这节课里获得明确的解题规则和方法,加强实践环节的训练应该作为一个教学重点。

三、学情分析

学生已经掌握VB基本操作和赋值语句、选择语句的用法,通过信息技术基础模块第三章第四节和本模块第一章的学习,已经了解了循环结构的算法流程,但学生并没有学习或掌握怎么样用程序设计语言中的循环语句来实现循环结构算法,而这也是这一节课学习的重点。

这节课学生可能会遇到的最大问题有两个:一是用For语句和Do语句来实现循环结构算法的区别;二是循环语句中由于受传统数学思维的影响,学生较难理解在循环体中变量值怎么会不断发生变化。鉴于此,在教学中要积极引导学生采取分解动作、实践认知、比较迁移等学习策略。

四、教学目标

知识与技能:理解循环语句的结构和特征,通过实践比较发现两种语句的区别,并初步掌握两种语句的使用。

过程与方法:通过模仿、迁移、提高三个阶段的学习和操作,获取循环语句解决问题的基本思想和方法,归纳循环语句解决问题的共性和适应性。

情感态度与价值观:通过实践体验遵循规则的重要性,树立规则意识,养成始终坚持、不断积累才能获得成功的意志品质。

五、重点难点

教学重点:如何用For语句、Do语句解决共性问题。

教学难点:For语句和Do语句的使用区别。

六、教学策略与手段

1、忽略问题的实际情境创设,直接展示结构化的共性问题,节约有效教学成本。

2、教学线索:多个共性的结构化数学问题引领---提出循环结构问题算法---实践中明确For语句和Do语句使用--循环结构程序实现---实践解决问题 。

3、学习线索:模仿阶段---迁移阶段---探究提高阶段。在三个阶段的不断推进中明确算法,接受语法,总结方法。

七、课前准备

上课前一分钟,屏幕上出现热身题,让学生复习旧知,进入上课状态,并为新课知识作准备。教师准备好课件,并把学生任务题提前发送到学生机中,以节约时间。

八、教学过程

1、新课导入

(1)热身:(2分钟)

有如下的顺序结构程序段,s=0:i=1

s=s+i:i=i+1

s=s+i:i=i+1

s=s+i:i=i+1

s=s+i:i=i+1

请问该程序段运行后, s=?  i=?

教学反思和设计意图:在第一个班教学时,我并没有设计这个环节,但我发觉在接下来讲解循环体语句时,学生对变量s和i不断发生变化较难“接受”,为突破这个瓶颈,我把循环体中的语句分解为他们能理解的顺序结构语句,这样学生在做题的过程中自然会产生一些问题:这些语句有什么用?这样重复岂不是太麻烦了?而这些问题的产生却能引领课堂的自然推进;另一方面,学生的回答往往是s=10,i=6,我却把答案说成s=0+1+2+3+4,i=1+1+1+1+1,用过程来描述结果,帮助学生对新知识的建构。

(2)讨论:请问下列的表达式或词语有什么共同的地方?(2分钟)

S=1+2+3+4+…+n

S=1*2*3*4*…*n

S=2+4+6+8+…+2*n

S=1+2+4+…+2^n

S=1/1+1/2+1/3+1/4+…+1/n

日复一日  年复一年 日积月累

学生回答(总结):数或量的的变化有规律。

教师总结:如果要解决以上这些数或量的的变化有规律的问题,我们可以请循环语句来帮忙。

设计意图:对初学者来说,循环语句是程序设计学习中的难点和重点,我认为要突破的关键不是仅仅让学生理解循环语句,而是让学生在今后的程序设计中学会哪些问题可以用循环结构来解决,所以一定要找出这些问题的共性,从而让学生在解题过程中找出规律,提炼方法。

2、新课:

教学步骤一:提出问题。先来解决以上问题中的一个简单问题S=1+2+3+…+n(1分钟)

设计意图:一个简单的又能体现循环思想的问题,学生容易接受。另外本课并未提供问题实际情境,主要有两个目的,一是紧扣重点,节约有效教学成本。二是紧紧地抓住学生的思路,让学生通过一定数量的问题解决,从实践中累积经验,从而获得新知,得到方法。

 

开始

输入n

赋初值s=0   i=1

i<=n

i=i+1

S=S+i

输出s的值

结束

 

教学步骤二:设计算法(2分钟)

 

说明:由于学生对循环结构的算法已经有一定的了解,而这节课学生学习和实践重点是接下来怎么用VB来实现循环结构,所以设计算法并不是教学的重点,接下来的问题的算法也不再重复展示,而是由学生在操作的过程中自己在头脑中构建。

教学步骤三:讲解循环语句语法。(7分钟)

如果说设计算法是“纸上谈兵”的话,那用VB来实现这个算法就是“沙场点兵”了。在赋值语句和选择语句中同学们已经体会到,任何语言都有它的语言规则,那在VB中的循环语句又是怎么样的呢?在这样的背景下,教师提出两种循环语句:For语句和Do语句,但教师并不呈现抽象的语句格式,而是分两步走:

第一步:直接给出用For 语句和Do语句来描述S=1+2+3+4++n这个问题的语句体,并简要讲解循环语句语法。

| | | |
Powered by SiteServer CMS