循环结构
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《循环结构》教学设计
盐城中学高士娟
【知识目标】掌握和理解循环结构中的for循环;学会使用循环结构解决问题。【技能目标】掌握解决问题的一般思路;培养学生用程序解决实际问题的技能;
养成良好的编程习惯。
【情感目标】培养学生养成严谨的学习态度和团结协作的精神。
【教学重点】for循环结构的语句格式;循环结构的理解。
【教学难点】使用循环结构解决问题。
【教学方法】采用案例模拟的方式,给学生不同的模板,让学生通过模仿解决问题,达到教学效果。
【教学过程】
一、导入新课
上课!
陈婷有一个E-MAIL邮箱的密码是一个5位数。但因为有一段时间没有打开这个邮箱了,陈婷把这个密码给忘了。不过陈婷自己是8月1日出生,而她妈妈的生日则是9月1日,爸爸的生日是10月4日,她只记得密码是81、91和104的公倍数。你能设计一个vb程序帮她找回这个密码吗?
今天这节课我们就来解决这个问题。
设计意图:从问题引入,激发学生的学习兴趣,促进学生的自主探究与合作交流,让学生在一个个典型的问题驱动下展开教学活动,引导学生由易到难、循序渐进地完成一系列任务,从而得到清晰的思路、方法和知识的脉络。在完成任务的过程中,培养分析问题、解决问题的能力。这也是本节课的关键所在。二、新课讲授
1.循环结构
首先,请同学们看一个熟悉的式子:s=1+2+3+……+10。结果是多少?55。换成乘号,P=1*2*3*4*5*……*10,结果是多少?有没有同学可以很快的告诉我?算不出来,我们发现这个式子是重复地进行乘的操作,乘的数是连续的自然数我们分析一下,p=1*2*……*i
i=1 p=1
i=2 p=1*2
i=3 p=1*2*3
i=4 p=1*2*3*4
i p=p*i
p的值是在前一个乘积基础之上乘以i得到的。
重复执行的操作是p=p*i。
那s=1+2+3+……+100中,重复进行的操作是——s=s+i,这是一个累加的过程。按照一定条件,反复执行某些步骤,这就是循环的概念。
设计意图:通过学生熟悉的例子引入,学生容易接受,也容易进行知识的迁移,降低学生的难度,能让学生水到渠成的掌握知识。学生适时归纳,总结规律,从中抽象出循环结构这样一类逻辑结构。通过对流程图的解读,使得学生体会流程图对于程序理解的重要性。
我们先看下P=1*2*3*4*5*……*10的程序。
Private Sub cmd1_Click()
Dim i As Integer
Dim p As long
p = 1
For i = 1 To 10
p = p * i
Next i
Print “p="; p
End Sub
同样的道理,再来看s=1+2+3+……+10的程序。
Private Sub cmd2_Click()
Dim i As Integer
Dim s As Integer
s = 0
For i = 1 To 10
s = s + i
Next i
Print "s="; s
End Sub
下面,我们就请同学们试试看,能不能模仿累加累乘的程序,补充一些语句完成任务一的几个程序呢?第一题我们请同学到前面操作。
【学生操作】完成任务一
设计意图:学生刚刚接触循环结构,对于循环的格式不熟悉,所以任务一的作用是让学生模仿累加求和的程序,对于循环结构有个初步的认识。任务一的设计是基于学生对已有代码认识的基础上,补充关键代码,从而解决问题。关键代码的修改使得学生通过循环变量的初终值以及循环体的变化初步认识 for循环的各部分。也正是通过这样的模仿,学生能够初步掌握循环结构的编程。这些代码为学生建立了开始编程的起点,也是通过代码的模仿进行初步的知识建构。因为任务一,只是学生对于程序的模仿和修改,大多数同学都能依葫芦画瓢的完成,所以学生出现的问题不多。
(1)Private Sub Command1_Click()
'计算s=1+1/2+1/3+1/4+……+1/100
Dim i As Integer
Dim s As Integer
s = 0
For i = 1 To 100
s =
Next i
Print s
End Sub
设计意图:学生只需填写循环体,通过模仿累加求和的程序,自行寻找规律。
教师提示对比1+2+3+……10的程序,引出循环体,学生到教师机完成并运行。其他两题请同学们完成。
(2)Private Sub Command2_Click()
'计算s=1-2+3-4+5-……-100
Dim i As Integer
Dim s As Integer
s = 0
For i = 1 To 100
If i Mod 2 = 0 Then
s =
Else
s=
End If
Next i
Print s
End Sub
设计意图:给出数的奇偶性判断,降低难度,让学生的思考重点放在循环体上。
(3)Private Sub Command3_Click()
'计算s=1*2+2*3+……+10*(10+1)
Dim i As Integer
Dim s As Integer
s =
For i= To
s =
Next i
End Sub
设计意图:因为问题涉及乘和加,所以s的初始值是0还是1,需要学生思考;循环变量的初终值,需要学生确定;循环体也需要学生确定,相对前面两题,增加了难度。
教师巡视,发现问题,解决问题。
【教师总结】演示学生完成的程序,运行,看结果。