循环结构(2)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Y N
输出S
结束
结束
例3:画出求的
1 2 2 1 1 1 2 2
算法流程图.
开始 输入n S ←1/2 i←1
S1 输入n;
S2 S←
1 2

S3 I← 1;
S4 如果I<n,转S5,否则转S7;
1 S5 S← 2 S ;
i←i+1
S←1/(2+S)
i<n
N 输出S 结束
Y
S6 I←I+1,转S4; S7 输出S.
以万米长跑为例我们分步描述上述过程:
S1 起跑; S2 如果未跑到10000m,那么转S3,否则转S4; S3 跑1圈,转S2; S4 结束。
S1 起跑;
S2 如果未跑到10000m,那么转S3,否则转S4; S3 跑1圈,转S2; S4 结束。
开始 起跑 开始 S←0
跑1圈
未满10000m
S←S+400
i在本算法中的作 用仅仅起到计数 S6 如果i不大于10, 的作用,并没有 参予计算 转S3; 交换S4,S5会 影响循环的判 断条件吗?
S20 输入学号为10的同学成绩x;
S21 S ← S+ x; S22 A←S/10; S23 输出 S,A.
S7 A←S/10;
S8 输出 S,A.
例2:依次从键盘输入学号是1到10号的同学的数学成 绩,并输出其中成绩超过80分的同学学号,和所有同 学的总分和平均分.
上面这种循环结构称为直到型循环:先 执行A,再判断所给条件p 是否成立,若P 不成立,则再执行A,如此反复,直到某一 次p成立,该循环过程结束。
先执行,后判断: 开始 S←0 “N”进入循 环
先判断,后执行: “Y”进入循 环 开始 S←0
S←S+400
A
S≥10000
Y N
A
S←S+400
S<10000
p
Y
N
p
N
Y
Y
N 结束
结束
直到型循环
当型循环
例1:写出1+2+3+4+5的一个算法.
开始 S ←1
累加变量 计数变量
计数器初始值不同
开始 S ←1 i←1 i←i+1
i←2
S←S+i i←i+1
计数和累加的顺序不同
S←S+i N
i>5
Y 输出S 结束
退出循环的计数值不同
先计数,后累 加,则计数值应达 到最后一个累加数 时退出(大于倒数 第二个累加数)
N 结束
S1 起跑;
S2 跑1圈; S3 如果跑到10000m,那么转S4,否则转S2; S4 结束。
开始 起跑 开始 S←0
跑1圈 N
S←S+400 N
满10000m
S≥10000
Y
结束Hale Waihona Puke Baidu
Y
结束
先执行,后判断: 开始
“N”进入循 环
A
S←0
S←S+400 N
p
Y
N
S≥10000
Y 结束
直到型循环
S1 S←0; S2 i ←0; S3 输入成绩x; S4 S ← S+x;
“否则”多 余
S1 S←0; S2 i ←0; S3 输入成绩x; S4 S ←x; S5 i ← i+1; S6 如果x>80,输出i;
S5 i ← i+1; S6 如果x>80,输出i, 否则转S7; S7 如果i不大于10, 转S3; S8 A←S/10; S9 输出 S,A.
例1:依次从键盘输入学号是1到10号的同学的数学成绩, 请设计一个算法计算他们总分和平均分.
S1 S←0; S2 输入学号为1的同学成绩x; S3 S ← S+x; S4 输入学号为2的同学成绩x; S5 S ←S+x; ……
需要一个计数 器i表示学号
S1 S←0; S2 i ←0; S3 输入成绩x; S4 S ← S+ x; S5 i ← i+1;
输入一个数;
S4 S←S+G
S5 S7 I←I+1 A←S /10
把S+G赋值给变量S;
把I+1赋值给变量I;
S6 如果I不大于10,转S3
转到S3循环;
把A/10存放到A中;
S8 输出A
小结
先执行,后判断: 先判断,后执行: “Y”进入循 环 开始 S←0
“N”进入循 环
开始 S←0
A
S←S+400 N
S<10000
Y
Y
N 结束
N 结束
1.2.3循环结构
先判断,后执行: 开始
“Y”进入循 环
A
S←0
p
S←S+400
S<10000
Y N
Y
当型循环
在算法中,像这种需要重复执行同一操 作的结构称为循环结构(cycle strcuture). 图中就是常见的一种循环结构:先判断所给 条件p 是否成立,若成立,则执行A,再判 断条件P是否成立;若p仍成立,则又执行A, 如此反复,直到某一次p不成立为止。
知识回顾
流程图的概念
流程图:是由一些图框和流程线组成的,其中 图框表示各种操作的类型,图框中的文字和符 号表示操作的内容,流程线表示操作的先后次 序。
顺序结构及框图表示 1.顺序结构:依次进行多个处理的结构称为顺序 结构. 2.顺序结构的流程图 顺序结构是最简单、 最基本的算法结构,语句与 语句之间,框与框之间是按 从上到下的顺序进行的.它 是由若干个处理步骤组成 的,这是任何一个算法都离 不开的基本结构.
N
S>2006 Y 输出i 结束
小结:
何时应用循环结构? • 当反复执行某一步骤或过程时,应用循环结构.当型循环是先判 断条件,条件满足再执行循环体,不满足退出循环;直到型循环 是先执行循环体,再判断条件,不满足条件时执行循环体,满足 时退出循环. •应用循环结构前:①确定循环变量和初始条件;②确定算法中反 复执行的部分,即循环体;③确定循环的终止条件.
直 到 型 后 计 数
开始 S ←1 i← 1
直 到 型 先 计 数
开始
当 型 先 计 数
S ←1
i←1
i ← i +2 S← S +i
i←i+2
S←S+i N i≥101 i>99
S ← S +i i ← i +2
i≤99
Y N 输出S 结束
Y
输出S 结束
i=99 Y
输出S
N i≥99 i>97
i≤97
S7 如果i不大于10, 转S3; S8 A←S/10;
S9 输出 S,A.
语句A
语句B
选择结构也叫分支结构,是指在算法中通过对条件的 判断,根据条件是否成立而选择不同流向的算法结构. 右图此结构中包含一个判断框, 根据给定的条件P是否成立而选择 执行A框或B框.无论P条件是否 成立,只能执行A框或B框之一, 不可能同时执行A框和B框,也不 可能A框、B框都不执行.
引例:在学校的长跑测试中,你每跑1圈,会想是否跑 完了全程.如果没有跑完全程,那么又会想离终点还 有多远。 用怎样的算法结构表示这个过程?
i>4
Y 输出S 结束
N
先累加,后计 数,则计数值达到 最后一个累加数+ 1时退出(大于最 后一个累加数)
开始 S ←1
累加变量清零
计数变量初 始化为1
习惯上改成:
开始 S ←0 i←1 S←S+i i←i+1
i←2
S←S+i i←i+1
i>5
Y 输出S 结束
N
i>5
Y 输出S
结束
N
练习1:写出1+2+3+4+5+…+100的一个算法.
开始 S ←? i←? S←S+i i←i+1 开始 S ←? i←?
i←i+1 S←S+i
i>?
Y 输出S
N
i≤?
N 输出S 结束
Y
结束
练习2:写出1×2×3×4×5的一个算法.
例2 设计一个计算10个数的平均 数的算法. 解:S1 S←0 把0赋值给变量S;
S2 I←1
S3 输入G
把1赋值给变量I;
A p
Y
N
S←S+400
S<10000
S≥10000
Y 结束
p
N
Y
Y
N
结束
直到型循环
当型循环
课外作业
课本P14 1、2 课本P15 7、9 每日一练 循环结构
S 1 3 5 99
开始 S ←0 i ←1
当 型 后 计 数
开始 S←0 i← 1 S←S+i i←i+ 2 i=101
例:请设计一个算法计算满足下列不等式的最小正数n.
1+2+3+…+n>2006.
分析:
1.你准备用哪种循环? 2.你认为如何设计累加变量和计数器的初始值比较合适? 3.退出循环的条件是什么?
开始 S←0
开始 S←0 i←0 S←S+i i←i+1
i←0
S←S+i i←i+1
Y
S≤2006 N 输出i 结束
相关文档
最新文档