第一节 算法与程序框图
※知识回顾
1.算法的概念:算法通常是指按一定规则解决某一类问题的明确和有限的步骤. 2.程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形.
3.程序框图的三种基本逻辑结构是顺序结构、条件结构、循环结构. 4.算法的描述方式有:自然语言、程序框图、程序语言. 5.算法的基本特征:①明确性:算法的每一步执行什么是明确的;②顺序性:算法的“前一步”是“后一步”的前提, “后一步”是“前一步”的继续;③有限性:算法必须在有限步内完成任务,不能无限制的持续进行;④通用性:算法应能解决某一类问题.
※典例精析
例1.如图所示是一个算法的程序框图,则该程序框图所表示的功能是
解析:首先要理解各程序框的含义,输入a,b,c三个数之后,接着判断a,b的大小,若b小,则把b赋给a,否则执行下一步,即判断a与c的大小,若c小,则把c赋给a, 否则执行下一步,这样输出的a是a,b,c三个数中的最小值.所以该程序框图所表示的功能是求a,b,c三个数中的最小值.
评注: 求a,b,c三个数中的最小值的算法设计也可以用下面程序框图来表示.
1
例2.下列程序框图表示的算法功能是( ) (1)计算小于100的奇数的连乘积 (2)计算从1开始的连续奇数的连乘积 (3)计算从1开始的连续奇数的连乘积, 当乘积大于100时,计算奇数的个数
(4)计算1×3×5××n?100成立时n的最小值
解析:为了正确地理解程序框图表示的算法,可以将执行过程分解,分析每一步执行的结果.可以看出程序框图中含有当型的循环结构,故分析每一次循环的情况,列表如下: 第一次:S?1?3,i?5; 第二次:S?1?3?5,i?7;
第三次:S?1?3?5?7,i?9,此时S?100不成立,输出结果是7,程序框图表示的算法功能是求使
※基础自测 一、选择题
1.下列说法正确的是( )
A.算法就是某个问题的解题过程; B.算法执行后可以产生不同的结果;
C.解决某一个具体问题算法不同结果不同;
D.算法执行步骤的次数不可以很大,否则无法实施.
1.解析:选项A ,算法不能等同于解法;选项B,例如:判断一个正整数是否为质数,结果为“是质数”和“不是质数”两种;选项C,解决某一个具体问题算法不同结果应该相同,否则算法构造的有问题;选项D,算法可以为很多次,但不可以无限次.选B.
2、如图所示的程序框图中,则第3个输出的数是( )
35A.1 B. C.2 D.
2232.解析:前3个分别输出的数是1,,2.故选C. 2
2
开始 A?1 2N?1 1A?A? 2输出A N?N?1 N?4? 是 结束 否 11113.如图给出的是求???????的值的一个程序框图,
24620其中判断框内应填入的条件是 ( ) A.i>10? B.i<10? C.i>20? D.i<20?
3
开始 S?0,n?2,i?1 S?S?1 nn?n?2 i?i?1 是 输出S 否 3.解析:通过列表,我们能清楚了解程序的每一步中的各个变量 1是怎样变化的, 第一次:i?1,S?,n?4, 211第二次:i?2,S??,n?6,…依此可知循环的条件是i>10?.选A 24
4.(2007年高考山东卷)阅读右边的程序框图,若输入的n是100,则输出的变量S和T的值依次是( ) A.2550,2500 B.2550,2550 C.2500,2500 D.2500,2550
结束 4
开始 输入n S?0,T?0 n?n?1 T?T?n n?n?1 S?S?n n?2? 否 输出S、T 是 结束 4.解析:依据框图可得
S?100?98?96?...?2?2550,T?99?97?95?...?1?2500.选A.
当工资薪金所得不超过3600元,计算个人所得税的一个算法框图如图. 则输出①、输出②分别为( ).
A.0.05x;0.1x B.0.05x;0.1x?185 C. 0.05x?80;0.1x; D.0.05x?80;0.1x?185 二、填空题
6.(2008年高考山东卷)执行右边的程序框图,若p=0.8,则输出的n=________..
5