《《流程图-循环结构》课件苏教版.ppt》由会员分享,可在线阅读,更多相关《《流程图-循环结构》课件苏教版.ppt(34页珍藏版)》请在金锄头文库上搜索。
1、引例引例:写出写出1+2+3+4+5的一个算法的一个算法. S1 n5; S2 S n(n+1)/2; S3 输出输出S.开始开始S n(n+1)/2结束结束输出输出Sn5算法一算法一: :引例引例:写出写出1+2+3+4+5的一个算法的一个算法.S1 S1;S2 S S2;S3 S S3;S4 S S4;S5 S S5;S6 输出输出S.让计算机自动让计算机自动生成生成2,5?S1 S1;S3 S Si;S5 S Si;S7 S Si;S9 S Si;S10 输出输出S.S2 i2;S4 ii 1;S6 ii 1;S8 ii 1;算法二算法二:S1 S1;S3 S Si;S5 S Si;S7
2、 S Si;S9 S Si;S10 输出输出S.S2 i2;S4 ii 1;S6 ii 1;S8 ii 1;S1 S1;S3 S Si;S5 转转S3;S6 S Si;S7 输出输出S.S2 i2;S4 ii 1;如果如果i不大于不大于4i=3i=4i=5结束结束输出输出S开始开始S 1i2SSiii1i4SSiNY能否将该语句也能否将该语句也放入循环放入循环?S1 S1;S3 S Si;S5 S Si;S7 S Si;S9 S Si;S11 输出输出S.S2 i2;S4 ii 1;S6 ii 1;S8 ii 1;S1 S1;S3 S Si;S5 转转S3;S6 输出输出S.S2 i2;S4
3、ii 1;如果如果i不大于不大于5i=3i=4i=5开始开始S 1结束结束输出输出Si2SSiii1i5NYS10 ii 1;i=6算法三算法三: :S1 S1;S3 S Si;S5 S Si;S7 S Si;S9 S Si;S10 输出输出S.S2 i2;S4 ii 1;S6 ii 1;S8 ii 1;S1 S1;S3 S Si;S6 转转S4;S7 输出输出S.S2 i2;S4 ii 1;如果如果i不大于不大于4开始开始S 1结束结束输出输出Si2SSiii1SSii4NYS5 S Si;i=3i=4i=5能否将该语句也能否将该语句也放入循环放入循环?S1 S1;S4 S Si;S6 S
4、Si;S8 S Si;S10 S Si;S11 输出输出S.S3 ii+1;S5 ii 1;S7 ii 1;S9 ii 1;S1 S1;S5 转转S3;S6 输出输出S.S2 i1;S3 ii 1;如果如果i不大于不大于4开始开始S 1结束结束输出输出Si1ii1SSii4NYS4 S Si;i=3i=4i=5S2 i1;i=2算法四算法四: :开始开始S 1结束结束输出输出Si1ii1SSii4NY开始开始S 1结束结束输出输出Si2SSiii1i5NY计数器初始值不同累加变量计数变量计数和累加的顺序不同退出循环的计数值不同 先累加,后计先累加,后计数,则计数值达到数,则计数值达到最后一个累
5、加数最后一个累加数1时退出(大于最时退出(大于最后一个累加数)后一个累加数) 先计数,后累先计数,后累加,则计数值应达加,则计数值应达到最后一个累加数到最后一个累加数时退出(大于倒数时退出(大于倒数第二个累加数)第二个累加数)开始开始S 1结束结束输出输出Si2SSiii1i5NY开始开始S 0结束结束输出输出Si1SSiii1i5NY累加变量清零计数变量初始化为1习惯上改成习惯上改成: :国际奥委会是如何通过投票确定主办权的归属的呢?国际奥委会是如何通过投票确定主办权的归属的呢? 在算法中,像这种需要重复执行同一操作在算法中,像这种需要重复执行同一操作的结构称为的结构称为循环结构循环结构(c
6、ycle strcuture)图)图中就是常见的一种循环结构:先执行框,中就是常见的一种循环结构:先执行框,再判断给定的条件再判断给定的条件 是否为是否为“假假”;若;若 为为“假假”,则再执行,如此反复,直到,则再执行,如此反复,直到为为“真真”,该循环过程结束,该循环过程结束开始开始S 0结束结束输出输出Si1SSiii1i5NY练习练习1:写出写出1+2+3+4+5+100的一个算法的一个算法.开始开始S ?结束结束输出输出Si?SSiii1i?NY开始开始S ?结束结束输出输出Si?ii1SSii?NY011001199练习练习2:写出写出12345的一个算法的一个算法.开始开始S 1
7、结束结束输出输出Si2SSiii1i5NY小结:小结:小结:小结:在算法中,需要重复执行同一操作的结构称为在算法中,需要重复执行同一操作的结构称为循环结构循环结构循环结构中计算器和累加变量的初始值和终值是需要关循环结构中计算器和累加变量的初始值和终值是需要关注的重点!注的重点!课后作业:课后作业:课后作业:课后作业:课本课本课本课本 习题习题习题习题1.1 1.1 1.1 1.1 No.7No.7No.7No.7、8 8 8 8、9.9.9.9. 在算法中,像这种需要重复执行同一操作在算法中,像这种需要重复执行同一操作的结构称为的结构称为循环结构循环结构(cycle strcuture)图)图
8、中就是常见的一种循环结构:先执行框,中就是常见的一种循环结构:先执行框,再判断给定的条件再判断给定的条件 是否为是否为“假假”;若;若 为为“假假”,则再执行,如此反复,直到,则再执行,如此反复,直到为为“真真”,该循环过程结束,该循环过程结束开始开始S 0结束结束输出输出Si1SSiii1i5NY知识回顾:知识回顾:例例1:试说明下面的流程图表示什么算法试说明下面的流程图表示什么算法.开始开始S 1结束结束输出输出Si1SSii1i100NY开始开始S 1结束结束输出输出Si1ii1SSi100NY11 1 开始开始S 1结束结束输出输出Si1SSii1i100NY开始开始S 0结束结束输出
9、输出Si1SSii1i101NY例例2:试将该流程图改为求:试将该流程图改为求:分析最后一次循环分析最后一次循环i 的值:的值:因此作判断时因此作判断时i的值为的值为102,即即i=102时,退出循环时,退出循环,退出循环的条件是退出循环的条件是i102,或或i101.需要执行需要执行S S + .例例3:试说明下面的流程图表示什么算法试说明下面的流程图表示什么算法.结束结束输出输出SS 0开始开始i i + 1S S + ii10YNi 0i=10i=0,1,2,3,4,5,6,7,8,9结束结束输出输出SS 0开始开始S S +ii i +1i10YNi 0例例4:试说明下面的流程图表示什
10、么算法试说明下面的流程图表示什么算法.i=10i=0,1,2,3,4,5,6,7,8,9结束结束输出输出SS 0开始开始S S +ii i +1YNi 0分析最后一次循环分析最后一次循环i的值:的值:需要执行需要执行S S +10.因此作判断时因此作判断时i的值为的值为10即即i=10时,作最后一次循环时,作最后一次循环,循环的条件是循环的条件是i10,或或i11试将该流程图改为求:试将该流程图改为求: 12310.i10开始开始S 1结束结束输出输出Si1SSii1i100NY直到型循环直到型循环pAYN当型循环当型循环pAYN结束结束输出输出SS 0开始开始i i + 1S S + ii1
11、0YNi 0先执行,后判断:先执行,后判断:先判断,后执行:先判断,后执行:“N”进入循环进入循环“Y”进入循环进入循环结束结束输出输出SS 0开始开始i i + 1S S + ii10YNi 0例例5:用自然语言描述流程图表示的算法用自然语言描述流程图表示的算法.S1 S0; ii 1; S3 若若i小于小于10,S4 输出输出S.S2 i0;S Si ;转转S3;结束结束输出输出SS 开始开始S S +ii i + YNi 0结束结束输出输出SS 开始开始i i + S S +i YNi 开始开始S 结束结束输出输出Si SSiii NY开始开始S 结束结束输出输出Si ii SSi NY
12、当当型型 后后计计数数直直到到型型 后后计计数数直直到到型型 先先计计数数当当型型 先先计计数数01112222111i99i=101i=99i97i101i99i99i97 在算法中,像这种需要重复执行同一操作在算法中,像这种需要重复执行同一操作的结构称为的结构称为循环结构循环结构(cycle strcuture)图)图中就是常见的一种循环结构:先执行框,中就是常见的一种循环结构:先执行框,再判断给定的条件再判断给定的条件 是否为是否为“假假”;若;若 为为“假假”,则再执行,如此反复,直到,则再执行,如此反复,直到为为“真真”,该循环过程结束,该循环过程结束开始开始S 0结束结束输出输出S
13、i1SSiii1i5NY知识回顾:知识回顾:循环结构根据需要可以先判断条件后进行循环(当循环结构根据需要可以先判断条件后进行循环(当型),也可以先进入循环后循环(直到型),一般情型),也可以先进入循环后循环(直到型),一般情况下两者可以互换,但循环的判断条件不同况下两者可以互换,但循环的判断条件不同;循环结构中,累加和计算的顺序影响循环的输出结循环结构中,累加和计算的顺序影响循环的输出结果,我们应学会果,我们应学会“跟踪法跟踪法”.结束结束输出输出SS 开始开始S S +ii i + YNi 0结束结束输出输出SS 开始开始i i + S S +i YNi 开始开始S 结束结束输出输出Si S
14、Siii NY开始开始S 结束结束输出输出Si ii SSi NY当当型型 后后计计数数直直到到型型 后后计计数数直直到到型型 先先计计数数当当型型 先先计计数数01112222111i99i=101i=99i97i101i99i99i97例例1:依次从键盘输入学号是依次从键盘输入学号是1到到10号的同学的数学成绩,号的同学的数学成绩,请设计一个算法计算他们总分和平均分请设计一个算法计算他们总分和平均分.S1 S0;S2 输入学号为输入学号为1的同学成绩的同学成绩x;S3 S Sx;S4 输入学号为输入学号为2的同学成绩的同学成绩x;S20 输入学号为输入学号为10的同学成绩的同学成绩x;S5
15、 S Sx;S21 S S x;S22 AS/10;S23 输出输出 S,A.需要一个计数需要一个计数器器i表示学号表示学号S1 S0;S2 i 0;S5 i i1;S4 S S x;S6 如果如果i不大于不大于10, 转转S3;S3 输入成绩输入成绩x;S7 AS/10;S8 输出输出 S,A.交换交换S4,S5会会影响循环的判影响循环的判断条件吗?断条件吗?i在本算法中的作在本算法中的作用仅仅起到计数用仅仅起到计数的作用,并没有的作用,并没有参予计算参予计算例例2:依次从键盘输入学号是依次从键盘输入学号是1到到10号的同学的数学成号的同学的数学成绩,并输出其中成绩超过绩,并输出其中成绩超过
16、80分的同学学号,和所有同分的同学学号,和所有同学的总分和平均分学的总分和平均分.S1 S0;S2 i 0;S5 i i1;S4 S Sx;S7 如果如果i不大于不大于10, 转转S3;S3 输入成绩输入成绩x;S8 AS/10;S9 输出输出 S,A.S6 如果如果x80,输出输出i, 否则转否则转S7;“否则否则”多余多余S1 S0;S2 i 0;S5 i i1;S4 S x;S7 如果如果i不大于不大于10, 转转S3;S3 输入成绩输入成绩x;S8 AS/10;S9 输出输出 S,A.S6 如果如果x80,输出输出i;例例3:画出求的画出求的 算法流程图算法流程图.S1 输入输入n;S
17、3 I 1;S4 如果如果In,转,转S5,否则转,否则转S7;S6 II+1,转,转S4;S7 输出输出S.S2 S ;S5 S ;结束结束输出输出Sii+1S1/(2+S)YN开始开始S 1/2输入输入ni1in1+2+3+n2006.3.退出循环的条件是什么?退出循环的条件是什么?1.你准备用哪种循环你准备用哪种循环?例例3:请设计一个算法计算满足下列不等式的最小正数请设计一个算法计算满足下列不等式的最小正数n.2.你认为如何设计累加变量和计数器的初始值比较合适?你认为如何设计累加变量和计数器的初始值比较合适?分析:分析:分析:分析:结束结束输出输出i开始开始S2006YNi 0S 0i
18、 i + 1S S + iS2006结束结束输出输出i开始开始YNi 0S 0i i + 1S S + i何时应用循环结构?何时应用循环结构? 当反复执行某一步骤或过程时,应用循环结构当反复执行某一步骤或过程时,应用循环结构.当当型循环是先判断条件,条件满足再执行循环体,不型循环是先判断条件,条件满足再执行循环体,不满足退出循环;直到型循环是先执行循环体,再判满足退出循环;直到型循环是先执行循环体,再判断条件,不满足条件时执行循环体,满足时退出循断条件,不满足条件时执行循环体,满足时退出循环环. 应用循环结构前:应用循环结构前:确定循环变量和初始条件;确定循环变量和初始条件;确定算法中反复执行的部分,即循环体;确定算法中反复执行的部分,即循环体;确定循确定循环的终止条件环的终止条件.小结:小结:小结:小结: