章末复习课
【画一画知识网络、结构更完善】
【填要点、记疑点】
1.算法的概念
算法可以理解为由基本运算及规定的运算顺序所构成的完整的解题步骤,或看成按要求设计好的有限的、确切的计算序列,并且这样的步骤或序列能够解决一类问题.
2.程序框图
(1)程序框图又称流程图,是一种用规定的图形、流程线及文字说明来准确、直观地表
示算法的图形.
(2)程序框图由程序框和流程线组成.一个或几个程序框的组合表示算法中的一个步骤:
流程线是带方向箭头的指向线,按照算法进行的顺序将程序框连接起来.
(3)在利用循环结构画程序框图前,常确定三件事:一是确定循环变量的初始条件;二
是确定算法中的循环体;三是循环终止的条件.
3.程序设计
自然语言表述的算法和程序框图是程序设计的基础,程序框图侧重于直观性,而程序则倾向于计算机执行的实用性.
【探题型、提能力】
题型一算法设计
算法设计应注意:
(1)与解决问题的一般方法有联系,从中提炼出算法;
(2)将解决问题的过程分为若干个可执行步骤;
(3)引入有关的参数或变量对算法步骤加以表达;
(4)用最简练的语言将各个步骤表达出来;
(5)算法的执行要在有限步内完成.
例1 已知平面直角坐标系中两点A (-1,0),B (3,2),写出求线段AB 的垂直平分线方程的一
个算法.
解 第一步,计算x 0=-1+32=1,y 0=0+22
=1,得AB 的中点N (1,1). 第二步,计算k 1=2-0
3-(-1)=12
,得AB 斜率. 第三步,计算k =-1k 1
=-2,得AB 垂直平分线的斜率. 第四步,由点斜式得直线AB 的垂直平分线的方程,并输出.
跟踪训练1 某工厂2012年生产小轿车200万辆,技术革新后预计每年的生产能力比上一
年增加5%,问最早哪一年该厂生产的小轿车数量超过300万辆?写出解决该问题的一个算法.
解 算法如下:
第一步,令n =0,a =200,r =0.05.
第二步,T =ar(计算年增量).
第三步,a =a +T(计算年产量).
第四步,如果a ≤300,那么n =n +1,
返回第二步:否则执行第五步.
第五步,N =2 012+n.
第六步,输出N.
题型二 程序框图及设计
算法的设计是画程序框图的基础,我们通过对问题的分析,写出相应的算法步骤.画程序框图之前应先对算法问题设计的合法性和合理性进行探讨,然后分析算法的逻辑结构和各步骤的功能(输入、输出、判断、赋值和计算),画出相应的程序框图.
例2 给出以下10个数:5,9,80,43,95,73,28,17,60,36.要求把大于40的数找出来并输出.试
画出该问题的算法程序框图.
解 程序框图如下:
跟踪训练2阅读如图所示的程序框图,运行相应的程序,如果输入某个正整数n后,输出的s∈(10,20),那么n的值为()
A.3 B.4
C.5 D.6
答案 B
解析逐项验证.若n=3,输出s=7?(10,20).
若n=4时,s=15∈(10,20),选B.
题型三算法语句的设计
基本算法语句有输入语句、输出语句、赋值语句、条件语句、循环语句五种,它们对应于算法的三种逻辑结构:顺序结构、条件结构、循环结构.用基本语句编写程序时要注意各种语句的格式要求,特别是条件语句和循环语句,应注意这两类语句中条件的表达以及循环语句中有关变量的取值范围.
例3给出30个数:1,2,4,7…,其规律是:第1个数是1,第2个数比第1个数大1,第3
个数比第2个数大2,第4个数比第3个数大3,依此类推,要计算第30个数的大小,现在已给出了该问题算法的程序框图(如下图)
(1)请在图中判断框①处和执行框②处填上合适的语句,使之能完成该题算法功能.
(2)根据程序框图写出程序.
解(1)①i>30?②P=P+i
(2)程序如下:
P=1
S=0
i=1
DO
S=S+P
P=P+i
i=i+1
LOOP UNTIL i>30
PRINT S
END
跟踪训练3试设计一个程序来求解这个正三棱柱的表面积和体积,并画出程序框图.解程序如下:
INPUT “a=”;a
INPUT “h=”;h
S=SQR(3)*a^2/4
V=S*h
C=3
PRINT “体积:”;V
PRINT “表面积:”;P
END
程序框图如图所示,
【呈重点、现规律】
从近三年高考各省市试题中可以看出,本部分命题呈现以下特点:
(1)考题以选择题、填空题为主,属中低档题.
(2)考查内容是程序框图,或者要求补充完整框图,或者要求出按程序框图执行后的结
果.程序框图中主要以条件结构和循环结构为主,其中循环结构是重点.
(3)对基本算法语句仅在2011年江苏、福建高考卷中以填空题的形式出现过;算法案例
没有考查.