高科文科数学算法真题解析.docx
《高科文科数学算法真题解析.docx》由会员分享,可在线阅读,更多相关《高科文科数学算法真题解析.docx(16页珍藏版)》请在冰豆网上搜索。
高科文科数学算法真题解析
专题09算法
算法是高中数学课程中的新增内容,是中国数学课程内容的一个新特色.“算法”过程是指机械式地按照某种确定的步骤行事,通过一系列小的简单计算操作完成复杂计算的过程.算法的学习内容大致可分为三个步骤:
用自然语言描述算法;精确刻画算法(程序框图);计算机实现执行算法(程序语言的描述过程).算法思想贯穿高中数学课程的相关部分.
【知识要点】
1.算法:
算法可以理解为由基本运算及规定的运算顺序所构成的完整的解题步骤,或者看成按照要求设计好的有限的确切的计算序列,并且这样的步骤或序列能够解决一类问题.现代意义上的“算法”通常是指可以用计算机来解决的某一类问题的程序或步骤.
2.程序框图
程序框图:
用一些通用的符号构成一张图来表示算法,这种图称为程序框图(程序框图又称流程图,是一种用程序框、流程线及文字说明来表示算法的图形).
用框图表示算法步骤的一些常用的图形符号:
程序框
名称
功能
终端框(起止框)
表示一个算法的起始和结束
输入、输出框
表示一个算法输入和输出的信息
处理框(执行框)
赋值、计算
判断框
判断某一条件是否成立,成立时在出口处标明“是”,不成立时标明“否”
↓→
流程线(指向线)
指引流程图的方向
连接点
连接另一页或另一部分的框图
程序框图的三种基本逻辑结构:
顺序结构:
描述的是最简单的算法结构,语句与语句之间、框与框之间按从上到下的顺序进行(如图9-1).
图9-1
条件分支结构:
依据指定条件选择执行不同指令的控制结构(如图9-2).
图9-2
循环结构:
根据指定条件决定是否重复执行一条或多条指令的控制结构(如图9-3).
图9-3
3.几种基本算法语句
任何一个程序设计语言中,都包含五种基本的算法语句,即输入语句、输出语句、赋值语句、条件语句、循环语句.
输入语句和输出语句分别用来实现算法的输入信息、输出结果的功能;赋值语句是用来表明赋给某一个变量一个具体的确定值的语句;条件语句是处理条件分支逻辑结构的算法语句;循环语句是用来处理算法中的循环结构的语句.
4.中国古代算法案例:
更相减损之术、辗转相除法:
求两个正数的最大公因数的方法.
辗转相除法算法步骤:
第一步:
用两数中较大数除以较小数,求商和余数.第二步:
用除数除以余数.第三步:
重复第二步,直到余数为0.第四步,得出两数的最大公约数,即余数0之前的余数.
更相减损术算法步骤:
第一步:
用较大数减去较小数,得到差.第二步:
比较减数与差的大小,再用较大数减去较小数.第三步:
重复第二步,直到差与减数相等为止.第四步:
相等数即为最大公约数.
割圆术:
用正多边形的面积逐渐逼近圆面积的算法求圆周率π.
秦九韶算法:
求一元多项式的值的一种方法,递推关系为
【复习要求】
1.了解算法的含义,了解算法的思想.
2.理解程序框图的三种基本逻辑结构:
顺序结构、条件分支结构、循环结构.
3.理解几种基本算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句的含义.
【例题分析】
例1如图(图9-4)所示,将一系列指令用框图的形式表示,箭头指向下一步的操作.请按照框图回答问题:
图9-4
(1)这个框图表示了怎样的算法?
(2)输出的数是多少?
【分析】由框图中的文字及图形符号表示的操作内容可知:
此算法是“求1到50的和”,由此可以算出输出的数.
解:
(1)此框图表示的算法为:
求1+2+3+…+50的和;
(2)易知所求和为1275.
【评析】程序框图主要包括三部分:
表示相应操作的框,带箭头的流程线和框外必要的说明.读框图时要从这三个方面研究,流程线反映了命令执行的先后顺序,主要看箭头方向,框及内外的文字说明表明了操作内容.常用这种方式考察对算法的理解和应用.
例2
(1)如图9-5所示的是一个算法的程序框图,已知a1=3,输出的结果为7,则a2的值为______.
图9-5
(2)如图9-6所示的是某个函数求值的程序框图,则满足该程序的函数解析式为_____.
图9-6
(3)如图9-7所示的是求某个数列和的程序框图,此程序输出的结果为_____.
图9-7
【分析】这三个小题的重点在于读懂框图.
(1)只含有顺序结构,
(2)含有条件分支结构,表明函数的定义域为R,当x<0时,遵从解析式f(x)=3x-1,否则(即当x≥0时),遵从解析式f(x)=2-5x;(3)中有两个循环变量S、I,S是累加变量,I是计数变量;另外还要判断I的奇偶性,以此决定是加还是减.
解:
(1)
;
(2)
;
(3)S=12-22+32-42+…+992-1002=-5050.
【评析】题
(1),只含有顺序结构,所表示的算法比较简单,只需按照框图箭头方向依次读出即可.题
(2)含有条件分支结构,这是一个与分段函数有关的算法,框图中含有判断框.读包含有判断框的框图时,要特别重视判断框内的条件和框外的文字说明,对应的下一步操作会依条件不同而改变.题(3)含有循环结构,当解决一些有规律的科学计算问题,尤其是累加和累乘时,往往可以利用循环结构来实现算法.循环结构有两种,读包含有循环结构的框图时,除关注判断框内外的说明外,一般要从开始依顺序做几次循环,观察变量的变化规律来帮助读懂算法的含义.
例3
(1)已知平面上的一点P0(x0,y0)和直线l:
Ax+By+C=0,求点P0到直线l的距离d,并画出程序框图.
(2)用条件分支结构写“已知三个数a、b、c,找出其中最大数”的算法及框图.
(3)写出求
的和的算法,画出程序框图,并写出相应程序(选做).
【分析】正确分析“算理”,才能选择恰当的算法结构,有条理的表达算法.
(1)在已知点到直线距离公式的前提下,适合用顺序结构表示;
(2)涉及比大小,必须用到条件分支结构;(3)中分母有规律的递增,可以引入累加变量S和计数变量i,且S=S+1/i是反复进行的,可以用循环结构表示.
解:
(1)算法及框图为:
S1输入x0,y0;A,B,C;
S2计算m=A2+B2;
S3计算n=Ax0+By0+C;
S4计算
;
S5输出d;
(2)算法及框图为:
S1输入a,b,c;
S2令x=a;
S3若b>x,则令x=b;
否则,执行S4;
S4若c>x,则令x=c;
否则,执行S5;
S5输出x;
(3)算法及框图为:
S1输入i=1,S=0;
S2当i≤n时,
i=i+1;否则执行S3;
S3输出S;
程序如下;
S=0
Fori=1:
1:
n
S=S+1/i
i=i+1
end
print(%io
(2),S)
【评析】书写算法时,一步一步的程序化步骤,即“算则”固然重要,但这些步骤的依据,即“算理”有着更基本的作用,“算理,,是“算则”的基础,“算则”是“算理”的表现.这三道小题由于算理不同,所蕴含的算法结构也不同.通过实例,模仿、操作、探索,经历通过设计程序框图表达解决问题的过程,可以更好的理解几种基本算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句,体会和理解算法的含义,了解算法语言的基本构成.本例中涉及的“利用公式求点到直线的距离”、“实数排序求最值问题”、“求数列的和或积的问题”,还包括“二分法求函数零点”、“质数的判定”,“求π的近似值”等等,都是算法的典型案例,学习时要给予充分的重视.一般算法的表示方法并不唯一.
不同的算法语言的书写形式是有差别的.本书所采用的是Scilab语言,学习时要了解赋值语句、输入输出语句、if语句、while和for语句的基本含义及表达方式,能够读懂语句表示的算法过程.
例4
(1)用辗转相除法计算56和264的最大公约数时,需要做的除法次数是______.
(2)用更相减损术求56和98的最大公约数时,操作如下:
(98,56)(56,42)(42,14)(28,14)(14,14),由此可知两数的最大公约数为______.
(3)用秦九韶算法求得多项式f(x)=x6-2x5+3x3+4x2-6x+5当x=2时函数值为______.
解:
(1)
所以最大公约数为8,需做的除法次数是4;
(2)最大公约数为14;
(3)33.
【评析】书上所涉及的古代基本算法案例包括:
更相减损术与辗转相除法、秦九韶算法、割圆术.辗转相除法与更相减损术都是求最大公约数的方法,辗转相除法又叫欧几里得方法,计算上以除法为主,更相减损术以减法为主,计算次数上,前者相对较少,特别是两个整数相差较大时区别尤其明显;辗转相除法以余数为0结束,更相减损术则以减数与差相等结束.秦九韶算法的特点是把求n次多项式的值转化为求n个一次多项式的值,运算时只有加法和乘法,而且运算的次数比较少,求一个n次多项式的值最多需要进行n次加法、n次乘法.割圆术是由中国古代数学家刘徽提出的,是当时计算圆周率比较先进的算法,“算理”明确,即用圆内接正多边形和外切正多边形逼近圆周率,重点是确定递推关系.
例5(09辽宁)某店一个月的收入和支出总共记录了N个数据,其中收入记为正数,支出记为负数.该店用下边的程序框图计算月总收入S和月净盈利V.那么在图中空白的判断框和处理框中,应分别填入下列四个选项中的()
A.A>0,V=S-TB.A<0,V=S-T
C.A>0,V=S+TD.A<0,V=S+T
【分析】本题要注意三点:
ak有正有负;S为总收入,是所有正数的和;T为总支出,是所有非正数的和.
答案为C
【评析】本题结合实际背景,强调算法的应用价值,是一种比较新的题型,应引起关注.
练习9
一、选择题
1.任何一个算法都必须有的基本结构是()
A.顺序结构B.条件分支结构
C.循环结构D.以上三个都要有
2.下面给出对程序框图的几种说法:
①任何一个程序框图都必须有起止框;
②判断框有一个入口,有不止一个出口;
③对于一个算法来说,判断框内的条件表达方式是唯一的;
其中正确的有()
A.0个B.1个C.2个D.3个
3.在算法的逻辑结构中,要求进行逻辑判断并根据结果进行不同处理的是哪种结构()
A.顺序结构B.条件分支结构和循环结构
C.顺序结构和条件分支结构D.顺序结构和循环结构
4.算法:
S1输入n;
S2判断n是否是2;若n=2,则n满足条件,
若n>2,则执行S3;
S3依次从2到n-1检验能否整除n,
若都不能整除,则n满足条件;
满足上述算法的n是()
A.奇数B.偶数
C.质数D.合数
二、填空题
5.阅读下面两个程序框图,框图1输出的结果为______;框图2输出的结果为______.
框图1框图2
6.(08广东)阅读图9-8的程序框图,若输入m=4,n=6,则输出a=______,i=______.
图9-8图9-9
7.阅读图9-9的程序框图,若输入的n是100,则输出的变量S和T的值依次是______.
8.“x=3*5”和“x=x+1”是某个程序中的先后相邻两个语句,下列说法中
①“x=3*5”是将数值15赋给x,而不是普通运算“x=3*5=15”;
②“x=3*5”可以写成“3*5=x”
③语句“x=x+1”在执行时,“=”右边x为15,“=”左边x为16;正确的有______.
三、解答题
9.分别用辗转相除法和更相减损术求189和81的最大公约数.
10.用循环语句书写求1+2+3+…+n>1000的最小自然数n的算法,画出程序框图,并写出相应的程序(选做).
11.(09宁夏)为了测量两山顶MN间的距离,飞机沿水平方向在AB两点进行测量,MN在同一个铅垂平面内(如图).飞机能够测量的数据有俯角和AB间的距离,请你设计一个方案,包括:
指出需要测量的数据(用字母表示,并在图中标出);用文字和公式写出计算MN间距离的步骤.
专题09算法参考答案
练习9
一、选择题
1.A2.C3.B4.C
二、填空题
5.27,216.12,37.2550,25008.①③.
三、解答题
9.解:
辗转相除法:
,所以最大公约数为27.
更相减损术:
189-81=108,108-81=27,81-27=54,54-27=27,
所以最大公约数为27.
10.解:
S1输入S=0,i=1;
S2S=S+i,i=i+1;
S3若S≤1000,重复执行S2;
若S>1000,输出i.
S=0,i=1;
WhileS≤1000
S=S+i;
i=i+1;
end
print(%io
(2),i)
11.解:
如图
(1)需要测量的数据有:
A点到M、N的俯角α1,β1;B点到M、N的俯角α2,β2;A、B的距离d.
(2)第一步:
计算BM,由正弦定理
;
第二步:
计算BN,由正弦定理
;
第三步:
计算MN,由余弦定理
.