高三数学高考导学练系列教案算法.docx
- 文档编号:9702921
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:33
- 大小:303.29KB
高三数学高考导学练系列教案算法.docx
《高三数学高考导学练系列教案算法.docx》由会员分享,可在线阅读,更多相关《高三数学高考导学练系列教案算法.docx(33页珍藏版)》请在冰豆网上搜索。
高三数学高考导学练系列教案算法
算法初步
考纲导读
算法的含义、程序框图
(一)了解算法的含义,了解算法的思想。
(二)理解程序框图的三种基本逻辑结构:
顺序结构、条件结构和循环结构。
知识网络
高考导航
算法不仅是数学及其应用的重要组成部分,也是计算机科学的重要基础。
算法初步虽然是新课标增加的内容,但与前面的知识有着密切的联系,并且与实际问题的联系也非常密切。
因此,在高考中算法初步知识将与函数、数列、三角、概率、实际问题等知识点进行整合,是高考试题命制的新“靓”点。
这样试题就遵循了“在知识网络交汇处设计试题”的命制原则,既符合高考命题“能力立意”的宗旨,又突出了数学的学科特点。
这样做,可以从学科的整体高度和思维价值的高度考虑问题,可以揭示数学各知识之间得到的内在联系,可以使考查达到必要的深度。
考查形式与特点是:
(1)选择题、填空题主要考查算法的含义、流程图、基本算法语句等内容,一般在每份试卷中有1~2题,多为中档题出现。
(2)在解答题中可通过让学生读程序框图去解决其它问题,此类试题往往是与数列题结合在一起,具有一定的综合性,可以考查学生的识图能力及对数列知识的掌握情况.
第1课时算法的含义
基础过关
1.算法的概念:
对一类问题的机械的、统一的求解方法称为算法。
2.算法的特性:
(1)有限性
(2)确定性
典型例题
例1.给出求1+2+3+4+5的一个算法。
解:
算法1
第一步:
计算1+2,得到3
第二步:
将第一步中的运算结果3与3相加,得到6
第三步:
将第二步中的运算结果6与4相加,得到10
第四步:
将第三步中的运算结果10与5相加,得到15
算法2
第一步:
取n=5
第二步:
计算
第三步:
输出运算结果
变式训练1.写出求
的一个算法.
解:
第一步:
使
,;
第二步:
使
;
第三步:
使
;
第四步:
使
;
第五步:
使
;
第六步:
如果
,则返回第三步,否则输出
.
例2.给出一个判断点P
是否在直线y=x-1上的一个算法。
解:
第一步:
将点P
的坐标带入直线y=x-1的解析式
第二步:
若等式成立,则输出点P
在直线y=x-1上
若等式不成立,则输出点P
不在直线y=x-1上
变式训练2.任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判断.
分析:
(1)质数是只能被1和自身整除的大于1的整数.
(2)要判断一个大于1的整数n是否为质数,只要根据质数的定义,用比这个整数小的数去除n,如果它只能被1和本身整除,而不能被其它整数整除,则这个数便是质数.
解:
算法:
第一步:
判断n是否等于2.若n=2,则n是质数;若n>2,则执行第二步.
第二步:
依次从2~(n-1)检验是不是n的因数,即整除n的数.若有这样的数,则n不是质数;若没有这样的数,则n是质数.
例3.解二元一次方程组:
分析:
解二元一次方程组的主要思想是消元的思想,有代入消元和加减消元两种消元的方法,下面用加减消元法写出它的求解过程.
解:
第一步:
②-①×2,得:
5y=3;③
第二步:
解③得
;第三步:
将
代入①,得
.
变式训练3.设计一个算法,使得从10个确定且互不相等的数中挑选出最大的一个数.
解:
算法1
第一步:
假定这10个数中第一个是“最大值”;
第二步:
将下一个数与“最大值”比较,如果它大于此“最大值”,那么就用这个数取代“最大值”,否则就取“最大值”;
第三步:
再重复第二步。
第四步:
在这十个数中一直取到没有可以取的数为止,此时的“最大值”就是十个数中的最大值。
算法2
第一步:
把10个数分成5组,每组两个数,同组的两个数比较大小,取其中的较大值;
第二步:
将所得的5个较大值按2,2,1分组,有两个数的组组内比较大小,一个数的组不变;
第三步:
从剩下的3个数中任意取两个数比较大小,取其中较大值,并将此较大值与另一个数比较,此时的较大值就是十个数中的最大值。
例4.用二分法设计一个求方程
的近似根的算法.
分析:
该算法实质是求
的近似值的一个最基本的方法.
解:
设所求近似根与精确解的差的绝对值不超过0.005,算法:
第一步:
令
.因为
,所以设x1=1,x2=2.
第二步:
令
,判断f(m)是否为0.若是,则m为所求;若否,则继续判断
大于0还是小于0.
第三步:
若
,则x1=m;否则,令x2=m.
第四步:
判断
是否成立?
若是,则x1、x2之间的任意值均为满足条件的近似根;若否,则返回第二步.
变式训练4.一个人带三只狼和三只羚羊过河,只有一条船,同船可以容纳一个人和两只动物.没有人在的时候,如果狼的数量不少于羚羊的数量,狼就会吃掉羚羊.请设计过河的算法.
解:
算法或步骤如下:
S1人带两只狼过河;
S2人自己返回;
S3人带一只羚羊过河;
S4人带两只狼返回;
S5人带两只羚羊过河;
S6人自己返回;
S7人带两只狼过河;
S8人自己返回;
S9人带一只狼过河.
第2课时程序框图
基础过关
(1)程序构图的概念:
程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形。
一个程序框图包括以下几部分:
表示相应操作的程序框;带箭头的流程线;程序框外必要文字说明。
(2)构成程序框的图形符号及其作用
程序框
名称
功能
起止框
表示一个算法的起始和结束,是任何流程图不可少的。
输入、输出框
表示一个算法输入和输出的信息,可用在算法中任何需要输入、输出的位置。
处理框
赋值、计算,算法中处理数据需要的算式、公式等分别写在不同的用以处理数据的处理框内。
判断框
判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”。
学习这部分知识的时候,要掌握各个图形的形状、作用及使用规则,画程序框图的规则如下:
1、使用标准的图形符号。
2、框图一般按从上到下、从左到右的方向画。
3、除判断框外,大多数流程图符号只有一个进入点和一个退出点。
判断框具有超过一个退出点的唯一符号。
4、判断框分两大类,一类判断框“是”与“否”两分支的判断,而且有且仅有两个结果;另一类是多分支判断,有几种不同的结果。
5、在图形符号内描述的语言要非常简练清楚。
(3)、算法的三种基本逻辑结构:
顺序结构、条件结构、循环结构
顺序结构:
顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。
顺序结构在程序框图中的体现就是用流程线将程序框自上而
下地连接起来,按顺序执行算法步骤。
如在示意图中,A框和B
框是依次执行的,只有在执行完A框指定的操作后,才能接着执
行B框所指定的操作.
典型例题
例1.如果学生的成绩大于或等于60分,则输出“及格”,否则输出“不及格”.用程序框图表示这一算法过程.
解:
变式训练1:
画出解不等式ax+b>0(b≠0)的程序框图.
解:
变式训练1
例2.设计一个计算1+2+3+…+100的值的
算法,并画出相应的程序框图.(要求用循环结构)
解:
第一步:
设i的值为1;
第二步:
设sum的值为0;
第三步:
如果i≤100执行第四步,
否则转去执行第七步;
第四步:
计算sum+i并将结果代替sum;
第五步:
计算i+1并将结果代替i;
第六步:
转去执行第三步;
第七步:
输出sum的值并结束算法.
变式训练2:
阅读右面的流程图,
输出max的含义是___________________________。
解:
求a,b,c中的最大值
例3.某快递公司规定甲、乙两地之间物品的托运费
用根据下列方法计算:
f=
其中
(单位:
元)为托运费,ω为托运物品的重量
(单位:
千克),试写出一个计算费用
算法,并画出相应的程序框图.
解:
算法:
第一步:
输入物品重量ω;
第二步:
如果ω≤50,那么f=0.53ω,否则,f=50×0.53+(ω-50)×0.85;
第三步:
输出物品重量ω和托运费f.
相应的程序框图.
变式训练3:
程序框图如下图所示,则该程序框图表示的算法的功能是
解:
:
求使
成立的最小正整数n的值加2。
例4.下面是计算应纳税所得额的算法过程,
其算法如下:
S1输入工资x(x<=5000);
S2如果x<=800,那么y=0;
如果800 否则y=25+0.1(x-1300) S3输出税款y,结束。 请写出该算法的流程图. 解: 流程图如上右。 变式训练4: 下面是求解一元二次方程 的流程图,根据题意填写: (1); (2);(3)。 解: (1) (2) (3)输出 第3课时基本算法语句 基础过关 输入语句 (1)输入语句的一般格式 (2)输入语句的作用是实现算法的输入信息功能;(3)“提示内容”提示用户输入什么样的信息,变量是指程序在运行时其值是可以变化的量;(4)输入语句要求输入的值只能是具体的常数,不能是函数、变量或表达式;(5)提示内容与变量之间用分号“;”隔开,若输入多个变量,变量与变量之间用逗号“,”隔开。 输出语句 (1)输出语句的一般格式 (2)输出语句的作用是实现算法的输出结果功能;(3)“提示内容”提示用户输入什么样的信息,表达式是指程序要输出的数据;(4)输出语句可以输出常量、变量或表达式的值以及字符。 赋值语句 (1)赋值语句的一般格式 (2)赋值语句的作用是将表达式所代表的值赋给变量;(3)赋值语句中的“=”称作赋值号,与数学中的等号的意义是不同的。 赋值号的左右两边不能对换,它将赋值号右边的表达式的值赋给赋值号左边的变量;(4)赋值语句左边只能是变量名字,而不是表达式,右边表达式可以是一个数据、常量或算式;(5)对于一个变量可以多次赋值。 条件语句: 1、条件语句的一般格式有两种: (1)IF—THEN—ELSE语句; (2)IF—THEN语句。 2、IF—THEN—ELSE语句 IF—THEN—ELSE语句的一般格式为图1,对应的程序框图为图2。 IF条件THEN 语句1 ELSE 语句2 ENDIF 图1图2 WHILE语句 (1)WHILE语句的一般格式是对应的程序框图是 WHILE条件 循环体 WEND (2)当计算机遇到WHILE语句时,先判断条件的真假,如果条件符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止。 这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句。 因此,当型循环有时也称为“前测试型”循环。 典型例题 例1.用描点法作函数 的图象时,需要求出自变量和函数的一组对应值,编写程序,分别计算当x=-5,-4,-3,-2,-1,0,1,2,3,4,5时函数值。 解: 程序: INPUT“x=”;x PRINTx PRINTy END 变式训练1: 编写程序,计算一个学生数学,语文,英语三门课的平均成绩。 解: 程序: INPUT“Maths=”;a INPUT“Chjinese=”;b INPUT“English=”;c PRINT“Theaverage=”;(a+b+c)/3 END 例2.儿童乘坐火车时,若身高不超过1.1m,则不需买票;若身高超过1.1m但不超过1.4m,则需买半票;若身高超过1.4m,则需买全票.试设计一个买票的算法,并画出相应的程序框图及程序。 解: 是否买票,买何种票,都是以身高作为条件进行判断的,此处形成条件结构嵌套.程序框图是: 程序是: INPUT“请输入身高h(米): ”;h IFh<=1.1THEN PRINT“免票” ELSE IFh<=1.4THEN PRINT“买半票” ELSE PRINT“买全票” ENDIF ENDIF END 变式训练2: 若输入8时,则下图程序执行后输出的结果是 解: 0.7 i=1 WHILEi<8 i=i+2 s=2※I+3 WEND PRINTs END 变式训练3 a=0 j=1 WHILEj<=5 a=(a+j)MOD5 j=j+1 WEND PRINTa END 例3 INPUTt IFt<=4THEN c=0.2 ELES c=0.2+0.1(t-3) ENDIF PRINTc END 变式训练2 例3.上图程序运行后输出的结果为() A.50B.5C.25D.0 解: D. 变式训练3: 上图程序运行后的输出结果为() A.17B.19C.21D.23 解: C. 例4.意大利数学家菲波拉契,在1202年出版的一书里提出了这样的一个问题: 一对兔子饲养到第二个月进入成年,第三个月生一对小兔,以后每个月生一对小兔,所生小兔能全部存活并且也是第二个月成年,第三个月生一对小兔,以后每月生一对小兔.问这样下去到年底应有多少对兔子? 试画出解决此问题的程序框图,并编写相应的程序. 解: 分析: 根据题意可知,第一个月有1对小兔,第二个月有1对成年兔子,第三个月有两对兔子,从第三个月开始,每个月的兔子对数是前面两个月兔子对数的和,设第N个月有两F对兔子,第N-1个月有S对兔子,第N-2个月有Q对兔子,则有F=S+Q,一个月后,即第N+1个月时,式中变量S的新值应变第N个月兔子的对数(F的旧值),变量Q的新值应变为第N-1个月兔子的对数(S的旧值),这样,用S+Q求出变量F的新值就是N+1个月兔子的数,依此类推,可以得到一个数序列,数序列的第12项就是年底应有兔子对数,我们可以先确定前两个月的兔子对数均为1,以此为基准,构造一个循环程序,让表示“第×个月的I从3逐次增加1,一直变化到12,最后一次循环得到的F”就是 S=1 Q=1 I=3 WHILEI<=12 F=S+Q Q=S S=F I=I+1 WEND PRINTF END 变式训练4: 写出已知函数 输入 的值,求y的值程序. 解: INPUT“请输入x的值: ”;x IFx>0THEN y=1 ELSE IFx=0THEN y=0 ELSE y=-1 ENDIF ENDIF PRINT“y的值为: ”;y END 算法语言单元测验题 一、选择题 1.我们已学过的算法有求解一元二次方程的求根公式,加减消元法求二元一次方程组解,二分法求函数零点等.对算法的描述有①对一类问题都有效;②对个别问题有效;③计算可以一步步地进行,每一步都有惟一的结果;④是一种通法,只要按部就班地做,总能得到结果.以上正确描述算法的有() A.1个B.2个C.3个D.4个 X=3 Y=4 X=X+Y Y=X+Y PRINTX,Y 2.右面程序的输出结果为()程序: A.3,4B.7,7 C.7,8D.7,11 3.算法 S1m=a S2若b S3若c S4若d S5输出m,则输出m表示() A.a,b,c,d中最大值 B.a,b,c,d中最小值 C.将a,b,c,d由小到大排序 D.将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.右图输出的是 A.2005B.65C.64D.63 6.给出以下算法: S1i=3,S=0 S2i=i+2 S3S=S+i S4S≥2009? 如果S≥2009,执行S5;否则执行S2 S5输出i S6结束 则算法完成后,输出的i的值等于。 7.将两个数A=9,B=15交换使得A=15,B=9下列语句正确的一组是() C=B B=A A=C A=C C=B B=A B=A A=B A=B B=A A.B.C.D. 8.计算机执行下面的程序段后,输出的结果是() PRINT , A. B. C. D. 9.读程序 甲: INPUTi=1乙: INPUTI=1000 S=0S=0 WHILEi≤1000DO S=S+iS=S+i i=i+lI=i一1 WENDLoopUNTILi<1 PRINTSPRINTS ENDEND 对甲乙两程序和输出结果判断正确的是() A.程序不同结果不同B.程序不同,结果相同C.程序相同结果不同D.程序同,结果同 10.阅读右边的程序框图,若输入的n是100, 则输出的变量S和T的值依次是() A.2500,2500B.2550,2550 C.2500,2550D.2550,2500 二、填空题 11.上图程序框图可用来估计π的值(假设函数CONRND(-1,1)是产生随机数的函数,它能随机产生区间(-1,1)内的任何一个实数)。 如果输入1000,输出的结果为788,则运用此方法估计的π的近似值为(保留四位有效数字)。 12.给出以下算法: S1i=3,S=0 S2i=i+2 S3S=S+i S4S≥2009? 如果S≥2009,执行S5;否则执行S2 S5输出i S6结束 则算法完成后,输出的i的值等于。 13.一个算法的程序框图如下图所示,若该程序输出的结果为 ,则判断框中应填入的条件是。 14.下面程序输出的n的值是______________. 三、解答题 15.某市公用电话(市话)的收费标准为: 分钟之内(包括 分钟)收取 元;超过 分钟部分按 元/分钟加收费。 设计一个程序,根据通话时间计算话费 16.写出求m=60和n=33的最大公约数的算法和程序框图. 17.有10个互不相等的数,写出找出其中一个最大数的算法和程序 18.假定在银行中存款10000元,按11.25%的利率,一年后连本带息将变为11125元,若将此款继续存人银行,试问多长时间就会连本带利翻一番? 请用直到型和当型两种语句写出程序. 19..用循环语句描述1+ + + +…+ . 20.目前高中毕业会考中,成绩在85~100为“A”,70~84为“B”,60~69为“C”,60分以下为“D”.编制程序,输入学生的考试成绩(百分制,若有小数则四舍五入),输出相应的等级. 算法语言测试题答案 一、选择题 1.C2.D3.B4.A5.D6.解析: 根据算法可知,i的值in构成一个等差数列{in},S的值是数列{in}相应的前n项的和,且i1=5,d=2,所以in=2n+1。 又S≥2009,所以n≥43,故in=89,所以输出的i的值为89。 7.B8.B把 赋给变量 ,把 赋给变量 ,把 赋给变量 ,把 赋给变量 ,输出 9.B10.解析: 由程序框图知,S=100+98+96+……+2=2550 T=99+97+95+……+1=2500,选D 点评: 该题主要考查算法流程图、等差数列求和等基础知识,以及算法思想、数据处理能力、语言转换能力。 本题采用直到型循环语句描述算法,解题的关键是循环体中两个n=n-1的理解,明确循环一次后n的值就减少了2。 二、填空题 11.解析: 本题转化为用几何概型求概率的问题。 根据程序框图知,如果点在圆x2+y2=1内,m就相加一次;现N输入1000,m起始值为0。 输出结果为788,说明m相加了788次,也就是说有788个点在圆x2+y2=1内。 设圆的面积为S1,正方形的面积为S2,则概率P= = ∴π=4p=4× ≈3.152 点评: 本题是算法框图与几何概型的整合,融合自然,具有创新性,有力地考查了基础知识和逻辑思维能力,同时又能体会到求无理数近似值的一种算法,可培养学生用数学的意识。 12.解析: 根据算法可知,i的值in构成一个等差数列{in},S的值是数列{in}相应的前n项的和,且i1=5,d=2,所以in=2n+1。 又S≥2009,所以n≥43,故in=89,所以输出的i的值为89。 13.解析: 由循环体可知,当sum=1时,s=0+ ;当sum=2时,s= + = ,……,当sum=4时,s= + = ,因此,判断框中应填: “i<5? ”或“sum<4? ” 点评: 本题设计角度比较新颖,具有探索性,同时答案又具开放性。 此题融算法、数列求和于一体,虽属常规题,但由于问法不同,有力考查学生对数列、框图等知识的掌握情况以及分析问题和解决问题的能力 14.3 三、解答题 15.解: 16.【解法一】 S1: 以n除m,得余数r=27 S2: 判断r是否为零,若r=0,则n为解,若r≠0,则重复S3操作(r=27) S3: 以n作为新的m(33),以r作为新的,l(27),求新的m/n的余数r=6 S4: 判断r是否为零,若r=O,则前一个n即为解,否则要继续S5操作 S5: 以n作为新的m(即m=27),以r作为新的n(即n=6),求新的余数r=3 S6: 判断上一个r是否为零,若r=O,则前一个n即为解,否则要执行S7操作 S7: 以n作为新的m(m=6),r作为新的n(n=3),求新的r=O S8: 判断r是否为零,这里r=O,算法结束,得,n=3是60与33的最大公约数程序框图略 【解法二】 S1: 输入60,33,将m=60,n=33 S2: 求m/n余数r S3: 若r=0,则n就是所求最大公约,输出n,若r≠O,执行下一步 S4: 使n作为新的m,使r作为新的n,执行S2 程序框图(当型) 【解法三】 S1: 令m=60,n=33 S2: 重复执行下面序列,直到求得r=0为止 S3: 求m/n的余数r S4: 令m=n,n=r S5: 输出m (直到型) 17.【解】 (一)算法 S1: 输入一个数,放在MAX中 S2: i=1 S3: 输入第1个数,放入x中 S4: 若x>MAX,则MAX=z S5: i=i+1 S6: 若i≤9,返回S3继续执行,否则停. (二)程序框图 18.【解】 用当型 INPUTm=10000 X=m y=O r=11.25/100 Do m<2*x y=y+1 x=x+r*x LoopUNTIL PRINTy END 用直到型 INPUT“money=”,10000 x=mOney r=11.25/100 y=O WHILEx≥2r y=y+1 x=x+r*x WEND PRINTy END 19.解: 算法分析: 第一步是选择一个变量S表示和,并赋给初值0,再选取一个循环变量i,并赋值为0; 第
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学 高考 导学练 系列 教案 算法