1.2.3循环结构
【新知导读】
1.什么是循环结构?循环结构的基本框架是什么?
2.循环结构分为哪两类型?
3.对同一个问题,如果分别用当型循环和直到型循环来处理的话,两者判断的条件相同吗?
【范例点睛】
例1.设计算法,输出1000以内能被3和5整除的所有正整数,画出算法流程图。 思路点拨:这个问题很简单,凡是能被3和5整除的正整数都是15的倍数,由于 1000=15×66+10,因此1000以内一共有66个这样的正整数。
易错辨析:此题既可以用当型循环又可以用直到型循环,但两者的判断的条件恰好相反。 方法点评: 当一个算法中包含多次重复执行相同类型的操作时,应考虑使用循环结构。 例2.设区间[0,1]是方程
的有解区间,画出用二分法算法求方程
在区间[0,1]
上的一个近似解的流程图,要求精确度为. 思路点拨:对于给定的一元方程1.确定有解区间2.取
的中点
.
,要求精确度为的近似解的算法如下:
3.计算函数在中点处的函数值.
4.判断函数值是否为0;
(1)如果为0,就是方程的解,问题就得到了解决;
(2)如果函数值不为0,则分下列两种情况:
①若,则确定新的有解区间为;
- 1 - / 7
②若,则确定新的有解区间为
5.判断新的有解区间的长度是否小于误差:
(1)如果新的有解区间长度大于误差,则在新的有解区间的基础上重复上述步骤; (2)如果新的有解区间长度小于或等于误差,则取新的有解区间的中点为方程的近似解. 在上述算法中: (1)循环变量和初始条件 设两个变量(2)循环体
算法中反复执行的部分是判断函数值
是否为0:
,分别表示有解区间的左端点和右端点,初始值分别为0和1.
①如果,输出
②如果不为0,则判断的符号:
ⅰ)如果,
ⅱ)如果(3)终止条件 ①②
;
,
易错辨析:将终止条件当成循环体
方法点评:循环结构可以大大地简化算法的表述;循环变量在构造循环结构中发挥了关键作用,本质上,这就是“函数的思想”。 【课外链接】
1.斐波拉契数列表示的是这样的一列数:0,1,1,2,3,5,…,后一项等于前两项的和。设计一个算法流程图,输出这个数列的前50项。 思路点拨:设置50个变量:如果设
,表示斐波拉契数列的前50项。
,由这个递推关系式知道,
分别表示数列中连续的三项,则
只要已知这个数列的前两项,就能将后面所有的项都输出来。
方法点评:因为算法中,反复计算和输出的步骤都是一样的,因此,可以用循环结构来描述这个算法。
- 2 - / 7
【随堂演练】
1.右图给出的是计算
其中判断框内应填入的条件是( )
的值的一个程序框图, 开始 S←0 (A)i>100 (B)i≤100 (C)i>50 (D)i≤50
N Y 2.在算法中,需要重复执行同一操作的结构称为( ) A顺序结构 B.循环结构 C.选择结构 D.分支结构
3.下面是一个算法的流程图,回答下面的问题: 当输入的值为3时,输出的结果为 4、有如下程序框图(如下图所示),
则该程序框图表示的算法的功能是 第1题
第3题 结束 (第4题)
输出y y=2x2+2 N 输入x 开始 I←I+2 结束 S←S+1/I 输出S I←2 x<5 Y y=x2-1 - 3 - / 7
5设计一个计算1+2+3+…+100的值的算法,并画出相应的程序框图.(要求用循环结构)
6.设计一个算法,输出500以内能被4整除的正数。
7.请观察给出的流程图,这是一个求和算法的流程图,请运行几步看一看,指出该循环结构的循环体、循环变量和循环的终止条件。
8.阅读图中所示的流程图,解答下列问题:
2
2
2
2
- 4 - / 7
(1)变量在这个算法中的作用是什么?
(2)这个算法的循环体是哪一部分,功能是什么? (3)这个算法的处理是什么?
- 5 - / 7
江苏省宿迁市高中数学第1章算法初步1.2流程图1.2.3循环结构练习苏教版必修3



