高中信息技术 第六章 第四节 循环结构教案 浙教版..docx





《高中信息技术 第六章 第四节 循环结构教案 浙教版..docx》由会员分享,可在线阅读,更多相关《高中信息技术 第六章 第四节 循环结构教案 浙教版..docx(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、课题:循环结构教学时间:授课班级:教学目标:学会用for .next语句和do.loop编写简单的程序,并会调试它教学重点、难点:1. For -next语句的用法2. Do-loop语句的用法3.循环语句的嵌套教学过程在用计算机处理问题时,除了分支问题外,还有不少是需要重复执行某一组操作 的问题。这就要采用循环结构,VB中提供了两种语句实现循环结构,For-Next语句 和Do-Loop语句o【例 6-6-1】求 s=l+2+3+100利用赋值语句可写出如下形式的代码:sum=0sum= sum+1sum= sum+2sum=sum+3Label3IblDivisorTextltxtaTex
2、t2txtbText3:txtDivisorCommand 1cmdCalcuCommand!cmdEndLabel3IblDivisorTextltxtaText2txtbText3:txtDivisorCommand 1cmdCalcuCommand!cmdEnd入口【例6-6-4如果我国人口以每年平均L5%的速度增长,问多少年后我国人口达到或超过15亿,设现在人口为12.3亿。解决这个问题的思路是:设现在人口为P 0-12.3亿,人口增长率1.5%=0.015, 则一年后人口为p l=p0+p0xr=p0x(l+r,看它是否达到或超过15亿;如果未达到,再算 二年后的人口 p 2=pl+
3、plxr=plx(l+r;n未达到,再计算三年后的人口 ,直到n 年后的人口数达到或超过15亿。流程图见图6-29,程序代码如下:直到型循环Private Sub Form_Click(Dim pAs SingleDim rAs SingleDim nAs Integer图 6-29p = 1230000000#r = 0.015n = 0Dop= p * (1 + rn = n + 1Loop Until p = 1500000000#Print n; ”年后丁,人口邛pEnd Sub运行结果如下;14年后人口 451506E+09三、循环的嵌套在一个循环中又完整地包含另一个循环,称为循环的
4、嵌套。前面介绍的几种类 型的循环可以互相嵌套,例如可以在一个For-Next循环中包含另一个For-Next循环, 也可以在一个Do-Loop循环中包含一个For-Next循环。【例6-6-5*为解决这个问题,可以采用如下的算法:使用双重 For-Next循环,外循环确定行数和各行起始打印位置, 内循环用来确定各行打印的个数。设外循环的循环变量为i,内循环的循环变量为j。由于图案上下对称,上下两半对应行的起始位置和字符个数完全一致,所以i的取值也应对称:i=3 To 3O设i=0行的起始打印位置为5图 6-30用心爱心6则第i行的起始打印位置为Tab(Abs(i+5,第i行的字符的个数为2*(
5、4-Abs(i-l o 流程图如图6-30所示,程序代码如下:打印菱形图案Private Sub Form_Click(Dim i As Integer, j As IntegerFor i = -3 To 3Print Tab(Abs(i + 5;确定每行的起始位置Forj = 1 To 2 * (4 - Abs(i - 1PrintNext jPrint换行Next iEnd Sub【例6-6-6】求3到100之间的全部质数。质数是除了 1和它本身之外,不能被其它任何整数整除的大于1的自然数。要 验证一个自然数n是否为质数,方法很多。我们采用的算法是:一个数n是否是质数,只需将n被2都 除
6、不尽,n就是质数。图6-31先计算出1=,然后将n被i=2Flag是个“标志变量”,初始时Flag=O,表示n未被任何一个整数整除,如果在某一次n被一个整数i整除,则Flag改变为1,表明该数不是质数。如果n不被任何一个i整除,则Flag始终保持为0o因此,在结束循环后根据Flag的值为。或1,来判断一个数是否为质数。nnNn=100Y求3到10之间的全部质数NPrivate Sub Form_Click(Dim n As Integer, i As Integer YDim flag As IntegerYDim kAs IntegerFor n = 3 To 100 Step 2k = I
7、nt(Sqr(ni = 2flag = 0NDo While i = kIf n Mod i = 0 Then Yflag=n能被某一个数整除End Ifi = i + 1LoopIf flag = 0 Then Print nNext n 图 6-31End Sub用心爱心专心7运行结果为:3 5 7 11 1317 19 23 29 3137 41 43 47 5359 61 67 71 7379 83 89 97说明:由于偶数决不会是质数,不必对偶数进行测试,因此外循环的增量为2;内循环中n Mod i=0中的Mod为取余运算,若n能被i整除,则余数为0;实践与探索请考察程序的内循环部分
8、,如果n是一个质数,如n= 11,则内循环结束时,标志变 量flag的值仍为0;如果n不是一个质数,如n=63,则进行第二次循环时,n能被3整 除,此时flag的值为1,已经可以判断出n不是质数,但程序中的内循环仍然要执行6 次,程序的效率不高。请问该如何修改程序,当flag的值为1时直接结束循环。练习(1)比较三种循环结构:For-Nexts Do While-Loopx Do-Loop Until,指出各在什 么情况下使用? Do While-Loop与Do-Loop Until之间又有什么区别?写出下列程序的执行结果。 Private Sub Form_Click(Dim x As In
9、tegerDim n As IntegerFor x = 3 To 11 Step 2n = n + 1Print x 二;xNext xPrint Hn=u; nPrint x=; xEndSub Private Sub Form _Click(Dim a As IntegerDim b As IntegerDim c As Integer a=l:b=l:c=lDo While a + b + c Sqr(yEndSub Private Sub Form _Click(Dim k As IntegerDim t As IntegerDim s As Integers = 0: t = 1F
10、or k = 2 To 4t = t * kNext kPrint ”s=; sjt=; tEndSub Private Sub Form _Click(Dim a As IntegerDim b As IntegerDim c As IntegerDim s As IntegerDim i As Integer a = 2: b = 1: s = 0For i = 10 To 6 Step -1s = s + ac = a + ba = bb = cNext isum=sum+100很显然,使用这种形式也能得到结果,但程序很冗长。观察上面的代码可以发现, 这段代码实际上重复了同一个操作:su
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高中信息技术 第六章 第四节 循环结构教案 浙教版. 高中 信息技术 第六 第四 循环 结构 教案 浙教版

限制150内