高中数学循环结构 典型例题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
【例1开始输出“是闰年”
y 输出“是闰年”y 输出“不是闰年”
y 输出“不是闰年”y y :=2000是是
是
否
否4整除y 100整除y 400整除y
(1(2(3三部分构成解:(1(2)(3【例2程图.
次比较..
i >100是循
开始
输出b 结
束
i := 2i := i +11
b := a b := a
b a
<是 是
否
否
输入…a ,a ,a ,1 2 10
i i
i >100
图2-2-32
【例3】菲波拉契数列表示的是这样一列数:0,1,1,2,3,5,…,后一项等于前两项的和.设计一个算法流程图,输出这个数列的前50项.
分析:输出数列的前50项,当然需设置50个变量:A 1,A 2,…,
A 50,若A i -2,A i -1,A i 分别表示数列中连续的三项,则有A i =A i -2+A i
-1
,即知任何一项的前2项,就可以把这项写出来. 解法一:流程图如图2-2-33.
开始输入 , A A 输出A 结束
A := 0
A := 1A := A + A i := 3i := i +1i >50是 否
图2-2-33
解法二:流程图如图2-2-34.
i 为循环变量,3为i 的初始值;
循环体为A i =A i -2+A i -1;终止条件为i >50.
法一中有50个变量,输出后不再进行其他操作,因此可只设三个变量A 1,A 2,A 3.
图2-2-34
【例4】设区间[0,1]是方程f(x)=0的有解区间,画出用二分法算法求方程f(x)=0在区间[0,1]上的一个近似解的流程图.要求精确度为ε.
分析:结合求精确度为ε的近似解的算法.
(1)由f(a)·f(b)<0,确定有解区间[a,b];
(2)取[a,b]的中点
2b
a+
;
(3)判断函数值f(
2b
a+
)是否为0.
①如果为0,则x=
2b
a+
是方程的解,问题解决完毕.
②如果不为0,则有两种情形.
a.若f(a)·f(
2b
a+
)<0,则(a,
2b
a+
)为新的有解区间.
b.若f(
2b
a+
)·f(b)<0,则(
2b
a+
,b)为新的有解区间.
(4)判断新的有解区间的长度是否小于ε.
①若大于ε,则在新的有解区间的基础上重复上述步骤.
②若不大于ε,则取新的有解区间的中点为方程的近似解.
解:算法流程图如图2-2-35.
先写出算法,再根据算法写流程图.其算法原理是不断取区间中点得到新的有解区间,同时使精度提高,最终得到满足条件的解.
设置两个循环变量a,b,其初始值分别为0,1,终止条件为
f(
2
b
a+
)=0或b-a≤ε.
输出结束
a b
+2a b +2