内容正文:
循环结构
循环结构(1)
有重复发生的事情,可以用循环结构处理
循环结构实现的先决是确定循环发生的条件。根据算法的“有穷性”原则,要求任务完成后就要结束循环,不允许死循环。(强制结束循环的快捷键Ctrl+Break)
流程图
重放的部分是什么?
循环体
重放发生的条件?
循环条件
7/28/2021
开始
Y
结束
N
条件为True?
循环体
思考:如何让数列1,3,5,…,99每一项放到数组d里,并输出
7/28/2021
重放的部分是什么?
给第i个元素赋值为2*i-1,并输出
重放条件?
次数不超过50次
7/28/2021
重放的部分是什么?
给第i个元素赋值为2*i-1,并输出
重放条件?
次数不超过50次
7/28/2021
开始
Y
结束
N
i≤50
d(i) ←2*i-1
i←1
输出d(i)
i←i+1
循环结构(1)-例子1
问题:求数列S=1+2+…+100的和
分析:第I项为第I-1项再加上公差1,截止第I项的和为截止第I-1项的和再加上第I项
第I项 1 2 3 4 5 … I … 100
总和 1 1+2 1+2+3 1+2+3+4 1+2+3+4+5 … 前(I-1)总和+第I项 … 1+2+…99+100
I
S=
1
1
2
3
4
1 + 2
1 + 2 + 3
1 + 2 + 3 + 4
5
6
7
1 + 2 + 3 + 4 + 5
1 + 2 + 3 + 4 + 5 + 6 + 7
1 + 2 + 3 + 4 + 5 + 6
…
…
99
100
1 + 2 + 3 + 4 + 5 + 6 + 7 + …+ 99
1 + 2 + 3 + 4 + 5 + 6 + 7 + …+ 99 + 100
N
1 + 2 +…+ (N-1) + N
重放的部分:前N项总和等于前N-1项之和再加上第N项
重放条件:不超过100项
循环结构(1)-例子1
问题:求数列S=1+2+…+100的和
确定循环条件
自然语言描述:
1.开始
2.i=1,S=0
3.如果i>100,输出结果,退出
4.如果i<=100,S=S+i,i=i+1,再执行3
5.结束
开始
S←0,i←1
Y
结束
N
i<=100
S ← S+i
输出S
i ← i+1