文档介绍:《循环结构》教学设计
盐城中学周勇军高士娟
【教材分析】本课取自教育科学出版社出版的《算法与程序设计》,第二章第三节的第三课时:循环结构之for循环。循环结构可以使大量具有重复性的代码简化,给编写较复杂的程序带来方便,因此在程序设计中具有重要的地位。
【学情分析】学生已经学习了顺序结构和分支结构,而循环结构相对于前面两种结构难度要
大。这部分的学习将为“常用算法的程序实现”奠定基础。
【知识目标】理解循环结构的概念,掌握for循环的语句格式,掌握for循环中初值、终值、
步长、循环体的分析方法。
【技能目标】掌握解决问题的一般思路,学会使用循环结构解决实际问题。
【情感目标】通过师生、生生互动的活动过程,培养学生的主动探究、勇于发现的精神,增
强编程兴趣,体验成功喜悦。
【教学重点】for循环结构的语句格式;循环结构中初值、终值、步长、循环体的分析方法;
使用循环结构解决问题。
【教学难点】循环结构中初值、终值、步长、循环体的分析方法;,使用循环结构解决问题。
【教学方法】采用案例模拟的方式,给学生不同的模板,让学生通过模仿解决问题,达到教
学效果。
【教学过程】
一、创设情景,导入课题
师:200多年前,数学家高斯的小学老师出了一道题目, 1+2+3+…+100的和是多少?,高斯很快就算出了正确答案,而其他同学则算得很慢,大家想一想这是为什么?
生:他们用的计算方法不一样?
师:他们分别采用了什么样的方法呢?
生:高斯是用公式的方法:1+2+3+…+100=(1+100)+(2+99)+(3+98)+…+(50+51)= 50´101 = 5050。其他同学是采用累加的方法:先求1+2,再加3,再加4,一直加到100,最后得到结果5050。
师:如果用编程来解决这个问题,无论是累加法,还是公式法,对于计算机而言都是适用的。对于公式的方法,关键是找到求和公式;那么对于累加的方法,又该如何编程解决呢?
师:请大家思考一下。我们可以用我们以前学过的知识。
师:这个题目要求的是‘和’,那这个地方要定义一个变量表示‘和’。我们定义一个变量s(dim s as integer),既然是和的话,那s的初始值应该设成0,即s=0。然后累加,从1开始,应该用什么语句表示,怎么写,s=s+1,然后加2,即s=s+2,以此类推,一直到s=s+100
生:
Dim s as integer
s = 0
s = s + 1
s = s + 2
s=s+3
……
s = s + 100
print s
师:大家可以发现,方法很简单,就是反复累加,但方法好不好?
生:太烦琐了。
师:那能不能把程序写得简单一些,让计算机自动重复上述过程呢?
师:我们仔细观察一下,这里的s=s+1、s=s+2、s=s+3等等,都是很相似的语句,都可以写成s=s+数字的形式。这里的数字是从1、2一直到100,是一个等差数列,公差是1。
师:如果用变量i来表示这里的数字,那每一行的操作就是s=s+i(i分别取1、2、3。。。、100),所以整个计算过程是在重复若干个同样的操作,即s=s+i。
像这样,在一定条件下,反复执行某种操作的结构,我们称之为循环结构。这就是我们今天要研究的内容。
设计意图:通过学生熟悉的例