2.3.3循环结构教学设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

2.2.3循环结构一、教材分析:本课为算法与程序设计第二章第三节的内容,是在学习了VB相关基础知识和顺序,选择结构的基础上进行的,所以是对前面知识和能力的提升,也是学习第三章程序实现的基础,作为程序设计三种结构之一,是程序设计的基础。所以这节是算法与程序设计程序设计中的一个重要知识点。二、学生分析:在学习本课之前,学生已熟悉VB程序的编程环境与运行方法,了解顺序及选择结构的程序执行流程,具备一定的算法基础和归纳总结能力。三、教学目标:(一)、知识与技能:1、了解循环的概念、理解循环结构的基本思想;2、掌握for…next语句的基本结构;3、理解for…next语句的执行过程;4、尝试采用循环结构编写简单的程序,解决实际问题。(二)过程与方法:经历分析、实践、讲解、探究、归纳,通过循序渐进、层层深入,逐步深化对循环思想和执行过程的理解。(三)情感、态度与价值观:1、通过一个个任务的实战演练,感知使用循环结构解决问题的便捷和优越,培养学生运用循环思想解决实际问题的能力,进一步激发学生学习编程的兴趣。2、通过在实际的问题中分析提炼循环结构,从程序设计领域进一步提升学生的信息素养。四、教学重难点:教学重点:①掌握for…next语句的基本结构;②理解for…next语句的执行过程教学难点:循环结构程序设计的思想及程序实现五、教学思路设计及教学方法:本节课以一个简单的实例,通过用顺序与循环两种结构来实现的对比引入循环结构,接着以累加、累积的例子为依托展开教学,最后通过一些变式练习来巩固知识。所以在本节课的教学中将采用讲授法、演示法、问题教学法等教学方法。六、教学过程:一、创设对比情境,引入新课提出问题:例1:在窗体上输出10行*(每行10个),怎么实现?教师先让学生上机实现,多数学生会想到顺序结构实现(在这过程中,学生可能会出现各种不同的方法,教师此时不要否认他们,要相信他们),并提出要输出100行呢?(此时学生有可能退缩了,因为要输入100条同样的语句)。之后教师用循环结构实现,并展示给学生,让学生对比在解决些问题过程中顺序结构存在的问题和循环结构的优越性,从而引入新课。最后得出结论:当出现许多有规律性重复运算时,这就需要我们掌握循环结构程序设计方法。二、明确目标,引入课题,师生共同探究,学习新知顺序结构实现PrivateSubCommand_Click()Print**********Print**********Print**********Print**********Print**********Print**********Print**********Print**********Print**********Print**********EndSub问题:重复写相同的语句,代码冗长循环结构实现PrivateSubCommand_Click()Fori=1to5step1PrintiNextiEndSub优越性:代码简洁,如果要输出100行*,只要将10改成100问题就迎刃而解。对比循环结构程序的特点是:程序中的一组语句(称为循环体)在一定条件下可多次被重复执行,举出生活中常见的循环结构的例子:星期(星期一~星期天)时间(00:00:00~23:59:59)月份(1~12)人造地球卫星、绕月卫星的运动数学运算:1+2+3+…+10(累加)1*2*3*…*10(累乘)50-1-2-3-…-10(累减)设计思路:FOR-NEXT语句等相关知识点的学习若从纯理论角度讲解学生会感觉很枯燥无味,不感兴趣,所以本过程是在结合上实例基础上进行的,目的在于提高学生学习编程兴趣,加深对知识点的理解,感受计算机解决问题的优越性。(一)、FOR-NEXT语句的格式、注意事项、流程图的学习1、教师PPT展示FOR-NEXT语句格式及注意事项格式:For<循环变量>=<初值>To<终值>step<步长><循环体>Next<循环变量>注意事项:1)、FOR-NEXT语句成对出现,循环变量名保持一致。2)、循环变量是数值型变量3)、步长值可正可负,当步长值为1时,step及步长值可以省略。4)、初值、终值和步长值既可以是常量,也可以是变量和表达式2、分析FOR-NEXT语句在例1中的格式对应关系:PrivateSubCommand_Click()forn=1to10PrintString(10,*)nextnEndSub此循环语句中:循环变量是n,初值是1,终值是10,步长是1循环体是Printstring(10,*)3、分析FOR-NEXT语句对应的流程图(根据流程图体会循环结构的思想)(二)、初试身手:打开“Form1.frm”窗体文件,完成S=1+2+3+4+…+100求和的半成品程序。教师提醒学生使用For循环语句需要注意的几点:(1)For语句与Next语句必须成对出现。(2)循环变量:由自己定义,但是前后必须保持一致。(3)当初值小于终值时,步长为正数;当初值大于终值时,步长为负数。只有当步长为1时,才可以省略step1。(4)循环体:可以为一条语句,也可以为多条语句。再次对比程序代码、流程图以及执行程序过程:(三)、共同探究:教师布置任务:打开“Form2.frm”窗体文件,完成S=1*2*3*4*…*100程序代码。学生完成后,教师总结学生的错误类型:(四)、迁移应用1、求100以内所有奇数的和,所有偶数的和2、求100以内所有奇数的积,所有偶数的积3、求1^2+2^2+3^2+…+100^2(五)、课堂训练:1、下面程序的功能是:计算表达式1+3+5+…+(2n-1)的值,在文本框Text1中输入n的值,结果在文本框Text2中输出。则程序中划线处的语句应更正为____________。PrivateSubCommand1_Click()DimsumAsLong,iAsInteger,nAsIntegersum=0n=Val(Text1.Text)Fori=1To2*n-1Step2sum=sum+iNextiText2.Text=Str(sum)EndSub2、下面是一段VisualBasic程序:PrivateSubCommand1_Click()DimsumAsDouble,iAsIntegersum=0Fori=1To5sum=sum+i*iNextiText1.Text=Str(sum)EndSub该程序运行后,语句sum=sum+i*i共执行了次。3、下面的程序是求7!(7!=1*2*3...*6*7)的值,并在默认窗口输出这个值。程序中有两处错误,请更正。PrivateSubCommand1_Click()DimaAsSinglea=0Fori=1tona=a*iNextiprintaEndSub①___________________________②__________________________4、下面的程序是求100以内奇数和s的值(S=1+3+5+7...+99)。请将程序补充完整:PrivateSubCommand1_Click()DimsAsSingleDimiAsSingleS=________Fori=1to100Step___________________NextiprintsEndSub5、输入100个数,统计其中负数、零及正数的个数。PrivateSubForm_Click()Dimi,fs,zs,nsAsIntegerremfs,ns,zs分别代表负数、零及正数的个数DimkAsDoubleFs=0:ns=0:zs=0Fori=1To100k=Val(InputBox(输入一个数据))Ifk0Then__________ElseIfk0Thenfs=fs+1Else____________EndIfNextiPrint负数、零及正数的个数是:;fs,ns,zsEndSub七、教学反思:我认为,一节课要达到既定的教学目标,首先要有学生的广泛参与;而学生的参与,是建立在他们对教学内容(甚至可能是其中的某一个点)感兴趣、有进一步探究的欲望的基础上的。这在一定程度上又取决于老师如何设计教学,变空洞枯燥为生动有趣;如何激发引导学生,变生硬的说教灌输为积极的互动获取。另外,信息技术课时紧张,怎样向课堂45分钟要效率,达到45分钟的最大化利用,也是值得深思的问题。本课基本的设计理念是:高效率、创新性、生活化、开放性。具体说来,本课有以下特点:1)考虑到“本节主要是让学生理解循环结构的基本思想”(教参P19)以及学情,本课有意弱化学生在VB中的代码编写,而重在对学生思维的训练,培养他们根据需要采用循环结构解决实际问题的思想,学会怎样分析循环问题、设计算法,并提炼for语句的基本结构,故任务设置以完善半成品居多;2)所用例子贴近生活,新颖别致,针对性强,有一定趣味性,能较好地调动学生的积极性,避免了一讲循环总是和几个经典数学题目打交道,干瘪乏味。3)整个教学活动循序渐进、层层深入、由易到难、由具体到抽象、点面结合,符合学生的认知特点。最后,让学生思考能否用循环结构解决自己遇到的一些问题,体现课堂的开放性,学生对获得的知识进行内化、迁移和应用。

1 / 8
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功