高二数学必修三之算法初步

合集下载

高中必修三数学第一章算法初步

高中必修三数学第一章算法初步

第一章 算法初步一、选择题1.如果输入3n ,那么执行右图中算法的结果是( ). A .输出3 B .输出4 C .输出5D .程序出错,输不出任何结果 2.算法:此算法的功能是( ). A .输出a ,b ,c 中的最大值 B .输出a ,b ,c 中的最小值 C .将a ,b ,c 由小到大排序D .将a ,b ,c 由大到小排序3.右图执行的程序的功能是( ). A .求两个正整数的最大公约数B .求两个正整数的最大值C .求两个正整数的最小值D .求圆周率的不足近似值 4.下列程序: INPUT “A =”;1 A =A *2 A =A *3 A =A *4 A =A *5 PRINT A(第1题)(第2题)(第3题)END输出的结果A 是( ). A .5B .6C .15D .1205.下面程序输出结果是( ).A .1,1B .2,1C .1,2D .2,26.把88化为五进制数是( ). A .324(5)B .323(5)C .233(5)D .332(5)7.已知某程序框图如图所示,则执行该程序后输出的结果是( ). A .1- B .1C .2D .12(第5题)(第7题)8.阅读下面的两个程序:甲 乙对甲乙两程序和输出结果判断正确的是( ).A .程序不同,结果不同B .程序不同,结果相同C .程序相同,结果不同D .程序相同,结果相同9.执行右图中的程序,如果输出的结果是4,那么输入的 只可能是( ).A .-4B .2C .2 或者-4D .2或者-410.按照程序框图(如右图)执行,第3个输出的数是( ). A .3 B .4 C .5 D .6二、填空题(第8题)(第9题)11.960与1 632的最大公约数为 .12.如图是某个函数求值的程序框图,则满足该程序的函数解析式为 _________.13.执行下图所示的程序,输出的结果为48,则判断框中应填入的条件为 .(第13题)14.下列所画流程图是已知直角三角形两条直角边a ,b 求斜边的算法,其中正确的是 .(写出正确的序号)(第12题)15.流程图中的判断框,有1个入口和 个出口. 16.给出以下问题:①求面积为1的正三角形的周长; ②求键盘所输入的三个数的算术平均数; ③求键盘所输入的两个数的最小数;④求函数⎩⎨⎧=22)(x x x f 当自变量取x 0时的函数值.其中不需要用条件语句来描述算法的问题有 . 三、解答题17.编写一个程序,计算函数f (x )=x 2-3x +5当x =1,2,3,…,20时的函数值.,x ≥3,x <318.编写程序,使得任意输入的3个整数按从大到小的顺序输出.19.编写一个程序,交换两个变量A和B的值,并输出交换前后的值.20.编写一个程序,计算两个非零实数的加、减、乘、除运算的结果(要求输入两个非零实数,输出运算结果).参考答案一、选择题1.C解析:本题通过写出一个算法执行后的结果这样的形式,来考查对算法的理解及对赋值语句的掌握.2.B解析:此算法为求出a,b,c中的最小值.3.A解析:本题通过理解程序语言的功能,考查求两个正整数最大公约数的算法.4.D解析:A=1×2×3×4×5=120.5.B解析:T=1,A=2,B=T=1.6.B解析:∵88=3×52+2×5+3,∴88为323(5).7.A解析:本题以框图为载体,对周期数列进行考查.数列以3项为周期,2 010除以3余数为0,所以它与序号3对应相同的数.8.B解析:结果均为 1+2+3+…+1 000,程序不同.9.B解析:如x≥0,则x2=4,得x=2;如x<0,则由y=x,不能输出正值,所以无解.10.C解析:第一个输出的数是1;第二个输出的数是3;第三个输出的数是5.二、填空题11.96.解析:(1 632,960)→(672,960)→(672,288)→(384,288)→(96,288)→(96,192)→(96,96).12.f (x )=⎩⎨⎧0 ,4- 50<,32x x x x -解析:根据程序框图可以知道这是一个分段函数. 13.答案:i ≥4?. 解析:根据程序框图分析:可知答案为i ≥4?. 14.①.解析:③、④选项中的有些框图形状选用不正确;②图中的输入变量的值应在公式给出之前完成.15.2.解析:判断框的两个出口分别对应“是”(Y)或“否”(N). 16.①②.解析:③④需用条件语句. 三、解答题 17.程序:(如图)18.第一步,输入3个整数a ,b ,c .第二步,将a 与b 比较,并把小者赋给b ,大者赋给a .第三步,将a 与c 比较.并把小者赋给c ,大者赋给a ,此时a 已是三者中最大的.≥ (第17题)第四步,将b 与c 比较,并把小者赋给c ,大者赋给b ,此时a ,b ,c 已按从大到小的顺序排列好.第五步,按顺序输出a ,b ,c . 程序:(如下图所示)19.程序:20.程序:。

高中数学必修3-算法初步精讲

高中数学必修3-算法初步精讲

高中数学必修3-算法初步精讲高中数学必修3-算法初步精讲§13.1 流程图一、知识导学1.流程图:是由一些图框和带箭头的流线组成的,其中图框表示各种操作的类型,图框中的文字和符号表示操作的内容,带箭头的流线表示操作的先后次序.2.算法的三种基本的逻辑结构:顺序结构、条件结构、循环结构.3.根据对条件的不同处理,循环结构又分为两种:直到型(until型)循环:在执行了一次循环体之后,对控制循环条件进行判断,当条件不满足时执行循环体.满足则停止.如图13-1-3,先执行A框,再判断给定的条件p是否为“假”,若p为“假”,则再执行A,如此反复,直到p为“真”为止.当型(while型)循环:在每次执行循环体前对控制循环条件进行判断,当条件满足时执行循环体,不满足则停止.如图13-1-4,当给定的条件p成立(“真”)时,反复执行A框操作,直到条件p为“假”时才停止循环.图13-1-1 图13-1-2二、疑难知识1.“算法“没有一个精确化的定义,教科书只对它作了描述性说明,算法具有如下特点:(1)有限性:一个算法的步骤是有限的,必须在有限操作之后停止,不能是无限的.(2)确定性:算法的每一步骤和次序应当是确定的.(3)有效性:算法的每一步骤都必须是有效的.2. 画流程图时必须注意以下几方面:(1)使用标准的图形符号.(2)流程图一般按从上到下、从左到右的方向画.(3)除判断框外,大多数流程图符号只有一个进入点和一个退出点.判断框具有超过一个退出点的唯一符号.(4)判断框分两大类,一类判断框“是”与“否”两分支的判断,而且有且仅有两个结果;另一类是多分支判断,有几种不同的结果.(5)在图形符号内描述的语言要非常简练清楚.3. 算法三种逻辑结构的几点说明:(1)顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的.在流程图中的体现就是用流程线自上而下地连接起来,按顺序执行算法步骤.(2)一个条件结构可以有多个判断框.(3)循环结构要在某个条件下终止循环,这就需要条件结构来判断.在循环结构中都有一个计数变量和累加变量.计数变量用于记录循环次数,累加变量用语输出结果,计数变量和累加变量一般是同步执行的,累加一次,计数一次. 三、经典例题[例1] 已知三个单元存放了变量x,y,z的值,试给出一个算法,顺次交换x,y,z的值(即y取x的值,z取y的值,x取z的值),并画出流程图.错解:第一步xy←第二步yz←第三步zx←流程图为图13-1-3错因:未理解赋值的含义,由上面的算法使得y,z均取x的值.举一形象的例子:有蓝和黑两个墨水瓶,但现在却把蓝墨水装在了黑墨水瓶中,黑墨水错装在了蓝墨水瓶中,要求将其互换,请你设计算法解决这一问题.对于这种非数值性问题的算法设计问题,应当首先建立过程模型,根据过程设计步骤完成算法. 我们不可将两个墨水瓶中的墨水直接交换,因为两个墨水瓶都装有墨水,不可能进行直接交换.正确的解法应为:S1 取一只空的墨水瓶,设其为白色;S2 将黑墨水瓶中的蓝墨水装入白瓶中;S3 将蓝墨水瓶中的黑墨水装入黑瓶中;S4 将白瓶中的蓝墨水装入蓝瓶中;S5 交换结束.p←{先将z的值赋给变量p,这时存放z的单元可作它正解:第一步z用}第二步yz←{再将y的值赋给z,这时存放y的单元可作它用}第三步xy←{同样将x的值赋给y,这时存放x的单元可作它用}第四步px←{最后将p的值赋给y,三个变量x,y,z的值就完成了交换}流程图为图13-1-4点评:在计算机中,每个变量都分配了一个存储单元,为了达到交换的目的,需要一个单元存放中间变量p.[例2]已知三个数a,b,c.试给出寻找这三个数中最大的一个算法,画出该算法的流程图.解:流程图为图13-1-5点评:条件结构可含有多个判断框,判断框内的内容要简明、准确、清晰.此题也可将第一个判断框中的两个条件分别用两个判断框表示,两两比较也很清晰.若改为求100个数中的最大数或最小数的问题则选择此法较繁琐,可采用假设第一数最大(最小)将第一个数与后面的数依依比较,若后面的数较大(较小),则进行交换,最终第一个数即为最大(最小)值.点评:求和时根据过程的类同性可用循环结构来实现,而不用顺序结构. [例3]画出求222210022+--Λ的值的算法流程图.++991-423解:这是一个求和问题,可采用循环结构实现设计算法,但要注意奇数项为正号,偶数项为负号.思路一:采用-1的奇偶次方(利用循环变量)来解决正负符号问题;图13-1-6 图13-1-7 思路二:采用选择结构分奇偶项求和;图13-1-8思路三:可先将222100222-++-Λ化简成+299431---Λ,转化为一个等差数列求和问题,易利用循环结构求出结果.199--1173-[例4] 设计一算法,求使200621232>22Λ成立的最小正整数n的+n+++值.解:流程图为图13-1-9点评:这道题仍然是考察求和的循环结构的运用问题,需要强调的是求和语句的表示方法.若将题改为求使200621232<22Λ成立的最大正整数++n++n的值时,则需注意的是输出的值.[例5]任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出判断.解:算法为:S1 判断n是否等于2,若n=2,则n是质数;若n>2,则执行S2 S2 依次从2~n-1检验是不是的因数,即整除n的数,若有这样的数,则n不是质数;若没有这样的数,则n是质数.点评:要验证是否为质数首先必须对质数的本质含义作深入分析:(1)质数是只能被1和自身整除的大于1的整数.(2)要判断一个大于1的整数n是否为质数,只要根据定义,用比这个整数小的数去除n.如果它只能被1和本身整除,而不能被其它整数整除,则这个数便是质数.图13-1-10[例6]设计一个求无理数2的近似值的算法.分析:无理数2的近似值可看作是方程022=-x 的正的近似根,因此该算法的实质是设计一个求方程022=-x 的近似根的算法.其基本方法即运用二分法求解方程的近似解.解:设所求近似根与精确解的差的绝对值不超过0.005,算法:S1 令2)(2-=x x f .因为0)2(,0)1(><f f ,所以设2,121==x xS2 令2)(21x x m +=,判断)(m f 是否为0,若是,则m 为所求;若否,则继续判断)()(1m f x f 大于0还是小于0.S3 若)()(1m f x f >0,则m x =1;否则,令m x =2.S4 判断005.021<-x x 是否成立,若是,则21,x x 之间的任意值均为满足条件的近似根;若否,则返回第二步.点评:二分法求方程近似解的算法是一个重要的算法案例,将在第三节中详细阐述.四、典型习题1.已知两个单元分别存放了变量A 和B 的值,则可以实现变量B A ,交换的算法是( ). A .S1 A B ← B .S1 A C ←C .S1 A C ←D .S1 A C ← S2 B A ← S2 C B ←S2 B A ← S2 B D ← S3 BC ← S3 C B ← 1. 下面流程图中的错误是( )图13-1-11A .i 没有赋值B .循环结构有错C .S 的计算不对D .判断条件不成立3.将“打电话”的过程描述成一个算法,这个算法可表示为,由此说明算法具有下列特性 .4. 在表示求直线0byax(a,b为常数,且a,b不同时为0)的斜率的+c=+算法的流程图中,判断框中应填入的内容是5. 3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在,画出这个算法的流程图.6.一队士兵来到一条有鳄鱼的深河的左岸.只有一条小船和两个小孩,这条船只能承载两个小孩或一个士兵.试设计一个算法,将这队士兵渡到对岸,并将这个算法用流程图表示.§13.2基本算法语句一、知识导学1.赋值语句用符号“←”表示,“yx←”表示将y的值赋给x,其中x是一个变量,y是一个与x同类型的变量或表达式.2.条件语句主要有两种形式:“行If 语句”和“块If语句”.“行If 语句”的一般形式为:If A Then B [Else C] .一个行If 语句必须在一行中写完,其中方括号中的Else部分可以缺省.“块If 语句”的一般格式为:If A ThenBElseCEnd ifThen 部分和Else 部分是可选的,但块If语句的出口“End if”不能省. 3.循环语句主要有两种类型:For语句和While语句.当循环的次数已经确定,可用“For”语句表示.“For”语句的一般形式为:For I from“初值”to step“步长”…End for上面“For”和“End for”之间缩进的步骤称为循环体.当循环次数不能确定是,可用“While”语句来实现循环.“While”语句的一般形式为:While A…End while其中A表示判断执行循环的条件.上面“While”和“End While”之间缩进的步骤称为循环体.二、疑难知识1.有的条件语句可以不带“Else”分支,即满足条件时执行B,否则不执行任何操作.条件语句也可以进行嵌套,在进行条件语句的嵌套时,书写要有层次.例如:If A ThenBElse if C ThenDElseEEnd if2.“For”语句是在执行过程中先操作,后判断.而“While”语句的特点是“前测试”,即先判断,后执行.若初始条件不成立,则一次也不执行循环体中的内容.任何一种需要重复处理的问题都可以用这种前测试循环来实现.三、经典例题[例1] 下列程序的运行结果是 .X←9Y8←If X>5 Then 7+Y←YIf X>4 Then 6+←YYIf X>3 Then 6+Y←YPrint Y错解:8+7=15错因:误认为在一个程序中只执行一个条件语句,与在一个条件语句中只选择其中一个分支相混淆.If A Then B [Else C] 若满足条件A 则执行B,否则是执行C,B和C是这个条件语句的分支,而这个程序省略了Else部分.正解:这里是有三个条件语句,各个条件语句是独立的,三个条件均成立,所以按顺序依次执行,结果为8+7+6+6=27.[例2] 下面的伪代码的效果是0←iWhile i <102⨯←i iEnd WhileEnd错解:执行10次循环错因:将For 语句和While 语句混淆. For 语句中有步长使循环变量不断变化,而While 语句则无.正解:无限循环下去,这是因为这里i 始终为0,总能满足条件“10<i ”,故是一个“死循环”.点评:“死循环”是设计循环结构的大忌,此题可改变i 的初始值或每一次循环i 都增加一个值.[例3]下面的程序运行时输出的结果是( )1←IWhile 5<I0←S1+←I II I S S *+←End whilePrint SEnd错解:第一次循环时,I 被赋予2,S 被赋予4;第二次循环时,I 被赋予3,S 被赋予4+23=13;第三次循环时,I 被赋予4,S 被赋予13+24=29;第四次循环时,I 被赋予5,S 被赋予545292=+.由于此时5=I ,故循环终止,输出S 为54.正解:由于0←S 在循环内,每经过一次循环后S 都被赋值0,因此,只要求满足条件的最后一次循环S 的值,即当4=I 时,16440=⨯+=S .[例4]用语句描述求使10007531<⨯⨯⨯⨯⨯n Λ成立的最大正整数n 的算法过程.解: 1←n1←TWhile 1000<T2+←n n n T T ⨯←End whilePrint 2-n点评:此题易错的是输出值,根据While 循环语句的特征当1000≥T 时跳出循环体,此时n 的值是1000≥T 时的最小的整数,则使1000<T 的最大整数应为n 的前一个奇数即2-n .[例5]已知当100100<<-x 时,1+=x y ,当100-≤x 时,4=y ,当100≥x 时,4-=x y ,设计一算法求y 的值.解: Read xIf 100100<<-x then1+←x yElse if 100≥x Then4-←x yElse4←yEnd ifEnd点评:嵌套If 语句可用如上的紧凑形式书写,要注意的是如不是采取紧凑形式,则需注意一个块If 语句对应一个End If ,不可省略或缺少.[例6]设计一个算法,使得输入一个正整数n ,输出1!+2!+3!+…+n !的值.写出伪代码.解:思路一:利用单循环,循环体中必须包括一个求各项阶乘的语句以及一个求和语句.Read n1←←S T For I from 1 to nTS S I T T +←⨯← End ForPrint S思路二:运用内外双重循环,但尤其注意的是每一次外循环T 的值都要从1开始.Read n0←SFor I from 1 to n1←TFor J from 1 to IJ T T ⨯←End ForT S S +←End ForPrint S四、典型习题1.下列的循环语句循环的次数为()For I from 1 to 7For J from 1 to 9Pint I+JEnd forEnd forEndA.7次B.9次C.63次D.16次2.运行下面的程序后输出的结果是,若将程序中的A语句与B语句的位置互换,再次执行程序后输出的结果为 .x←1y←While 3<x←′A语句y+yxx′B语句←x+1End WhilePrint x,yEnd3.伪代码描述的求T的代数式是,求S的代数式是 .Read n1←T0←SFor I from 1 to nI T T ⨯←I S S +←End forPrint T,S4.运行下面程序后输出的结果为For I from 10 to 1 step -2Print IEnd forEnd5. 将100名学生的一门功课的成绩依次输入并计算输出平均成绩.§ 13.3 算法案例一、知识导学1.算法设计思想:(1)“韩信点兵—孙子问题”对正整数m 从2开始逐一检验条件,若三个条件中有任何一个不满足,则m 递增1,一直到m 同时满足三个条件为止(循环过程用Goto 语句实现)(2)用辗转相除法找出b a .的最大公约数的步骤是:计算出b a ÷的余数r ,若0=r ,则b 为b a ,的最大公约数;若0≠r ,则把前面的除数b 作为新的被除数,继续运算,直到余数为0,此时的除数即为正整数b a ,的最大公约数.2.更相减损术的步骤:(1)任意给出两个正数,判断它们是否都是偶数.若是,用2约简;若不是,执行第二步.(2)以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数.继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数.(3)二分法求方程0)(=x f 在区间[]b a ,内的一个近似解*x 的解题步骤可表示为 S1 取[b a ,]的中点()b a x +=210,将区间 一分为二; S2 若()00=x f ,则0x 就是方程的根;否则判别根*x 在0x 的左侧还是右侧:若()()00>⋅x f a f ,()b x x ,*0∈,以0x 代替a ;若()()00<⋅x f a f ,则()0,*x a x ∈,以0x 代替b ;S3 若c b a <-,计算终止,此时0x x ≈*,否则转S1.二、疑难知识1.)int(x 表示不超过x 的整数部分,如0)32.0int(,5)86.5int(==,但当x 是负数时极易出错,如1)14.1int(-=-就是错误的,应为-2.2.),mod(b a 表示a 除以b 所得的余数,也可用a mod b 表示.3.辗转相除法与更相减损术求最大公约数的联系与区别:(1)都是求最大公约数的方法,计算上辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少,特别当两个数字大小区别较大时计算次数的区别较明显.(2)从结果体现形式来看,辗转相除法体现结果是以相除余数为0则得到,而更相减损术则以减数与差相等而得到.4.用二分法求方程近似解,必须先判断方程在给定区间[b a ,]上是否有解,即()x f 连续且满足()()0<b f a f .并在二分搜索过程中需对中点处函数值的符号进行多次循环判定,故需要选择结构、循环结构,即可用Goto 语句和条件语句实现算法.三、经典例题[例1]=)5int(π , =-)05.0int( ,=)9,67mod( , 45 mod 7= .A .16,-1,4,3 B.15,0,4,3 C.15,-1,3,4 D.15,-1,4,3 错解:根据)int(x 表示不超过x 的整数部分, ),mod(b a 表示a 除以b 所得的余数,选择B.错因:对)int(x 表示的含义理解不透彻,将不超过-0.05的整数错认为是0,将负数的大小比较与正数的大小比较相混淆.正解:不超过-0.05的整数是-1,所以答案为D.[例2] 所谓同构数是指此数的平方数的最后几位与该数相等.请设计一算法判断一个大于0且小于1000的整数是否为同构数.错解: 算法思想:求出输入数的平方,考虑其个位或最后两位或最后三位与输入数是否相等,若相等,则为同构数.Read xx x y *=If )10(y x = or )100(y x = or )1000(y x = ThenPrint xEnd ifEnd错因:在表示个位或最后两位或最后三位出现错误,“/”仅表示除,y/10,y/100,y/1000都仅仅表示商.正解:可用)1000,mod(),100,mod(),10,mod(y y y 来表示个位,最后两位以及最后三位.Read x=y*xxIf ))1000x=or )),mod((yx=(ymod(10,(ymod(,100x=or ))ThenPrint xEnd ifEnd[例3]《孙子算经》中的“物不知数”问题:“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?”可以用下面的算法解决:先在纸上写上2,每次加3,加成5除余3的时候停下来,再在这个数上每次加15,到得出7除2的时候,就是答数.试用流程图和伪代码表示这一算法.解:流程图为:伪代码为:10 2m←20 3+m←m30 If ()35,m od ≠m Then Goto 2040 If 2)7,mod(=m ThenPrint mGoto 8050 End if60 15+←m m70 Goto 4080 End点评:这是孙子思想的体现,主要是依次满足三个整除条件.[例4]分别用辗转相除法、更相减损法求192与81的最大公约数.解:辗转相除法:S1 30281192ΛΛΛΛ=÷S2 2123081ΛΛΛΛ=÷S3 912130ΛΛΛΛ=÷S4 32921ΛΛΛΛ=÷S5 0339ΛΛΛΛ=÷故3是192 与81 的最大公约数.更相减损法:S1 11181192=-S2 3081111=-S3 513081=-S4 213051=-S5 92130=-S6 12921=-S7 3912=-S8 639=-S9 336=-故3 是192与81的最大公约数.点评:辗转相除法以除法为主,更相减损术以减法为主,计算次数上辗转相除法计算次数相对较少.辗转相除法是当大数被小数整除时停止除法运算,此时的小数就是两者的最大公约数,更相减损术是当大数减去小数的差等于小数时减法停止,较小的数就是最大公约数.[例5]为了设计用区间二分法求方程0123=-+x x 在[0,1]上的一个近似解(误差不超过0.001)的算法,流程图的各个框图如下所示,请重新排列各框图,并用带箭头的流线和判断符号“Y”、“N ”组成正确的算法流程图,并写出其伪代码.(其中b a ,分别表示区间的左右端点)图13-3-2流程图为图13-3-3伪代码为10 Read b a ,20 2)(0b a x +←30 1)(23-+←a a a f40 1)(20300-+←x x x f 50 If 0)(0=x f Then Goto 12060 If 0)()(0<x f a f Then70 0x b ←100 End if80 Else90 0x a ←100 End if110 If 001.0≥-b a Then Goto 20120 Print 0x130 End点评:二分法的基本思想在必修一中已渗透,这里运用算法将二分法求方程近似解的步骤更清晰的表述出来.[例6] 用秦九韶算法计算多项式654323567983512)(x x x x x x x f ++++-+=在4-=x 时的值时,3v 的值为 .解: 根据秦九韶算法,此多项式可变形为()()()()()()1235879653++-+++=x x x x x x x f按照从内到外的顺序,依次计算一次多项式当4-=x 时的值:40-=v75)4(31-=+-⨯=v346)7()4(2=+-⨯-=v577934)4(3-=+⨯-=v故当4-=x 时多项式的值为57-.点评:秦九韶算法的关键是n 次多项式的变形.把一个n 次多项式0111)(a x a x a x a x f n n n n ++++=--Λ改写成0121)))(()(a x a x a x a x a x f n n n +++++=--ΛΛ,求多项式的值,首先计算最内层括号内一次多项式的值,然后由内向外逐层计算一次多项式的值,这样把求n 次多项式的值问题转化为求n 个一次多项式的值的问题,这种方法成为秦九韶算法.这种算法中有反复执行的步骤,因此,可考虑用循环结构实现.四、典型习题1.以下短文摘自古代《孙子算经》一书,其引申出的“大衍求一术”称为“中国剩余原理”:“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?”答曰( ).A .二十一 B.二十二 C.二十三 D.二十四2.用辗转相除法求52与39的最大公约数的循环次数为( ).A .1次 B.2次 C.3次 D.5次3.下面程序功能是统计随机产生的十个两位正整数中偶数和奇数的个数,并求出偶数与奇数各自的总和.For I from 1 to 1010)90int(+*←Rnd xPrint x;If Thenxs s n n +←+←22122 Elsex s s +←11End IfEnd forPrintPrint “奇数个数=”;1n,“偶数个数=”;2n4.若一个数的各因子之和正好等于该数本身,则该数成为完数.请补充完整下列找出1~100之间的所有完数的伪代码.For a from 2 to 100c1For b from 2 toIf mod(a,b)=0 ThenEnd ifEnd ForIf ThenPrint aEnd ifEnd ForEnd5.设计求被9除余4,被11除余3的最小正整数的算法,画出流程图,写出伪代码.6.利用辗转相除法或更相减损术求324,243,135的最大公约数.。

算法初步

算法初步
n
n1
a1x a0
f x an x an1 x an 2 x a1 x a0


多少次加法?多少次乘法?
f x an x an 1 x an 2 x a1 x a0
令 vk
Y
P
N
A B
A
B
三 种 结 构
N
A P Y
P N
Y
A
赋值语句 A=B
例如:交换两个变量 x、y 的值。
输入语句与赋值语句的区别是什么?
输出语句有计算功能吗? 赋值语句有计算功能吗? 输入语句有计算功能吗?
开始
输入 x
N N
y 1
x0
x0
Y
y 1
Y
y0
输 出y
结束
设计算法,输出1000以内能被3和5整除的所有正整数,已知算 法流程图如右图,请填写空余部分:① _________ ;② __________。
循环体;
end while 表达式
循环体;
end
第18题
辗转相除法 用较大的数除以较小的数,所得余 数与较小的数继续,直到大数被小 数除尽,这时较小的数就是最大公 约数。
更相减损术 用较大的数减去较小的数,所得差 数与较小的数继续,直到相等,这 时相等的数就是最大公约数。
秦九韶算法
f x an x an1x
i=1
对任意正整数n,设计一个算法求 1 1 1 S 1 2 3 n 的值,画出程序框图。
基本算法语句
a=input(“a=”) print(%io(2),a,b)
条件语句
if 表达式
语句序列1; else

高二数学必修3课后答案

高二数学必修3课后答案

第一章 算法初步1.1算法与程序框图练习(P5). 1、算法步骤:第一步,给定一个正实数r .第二步,计算以r 为半径的圆的面积2S r π=.第三步,得到圆的面积S .2、算法步骤:第一步,给定一个大于1的正整数n .第二步,令1i =.第三步,用i 除n ,等到余数r .第四步,判断“0r =”是否成立. 若是,则i 是n 的因数;否则,i 不是n 的因数. 第五步,使i 的值增加1,仍用i 表示.第六步,判断“i n >”是否成立. 若是,则结束算法;否则,返回第三步.练习(P19)算法步骤:第一步,给定精确度d ,令1i =.的到小数点后第i 位的不足近似值,赋给a 的到小数点后第i 位的过剩近似值,赋给b .第三步,计算55b a m =-.第四步,若m d <,则得到5a;否则,将i 的值增加1,仍用i 表示.返回第二步.第五步,输出5a .程序框图:习题1.1 A 组(P20)1、下面是关于城市居民生活用水收费的问题.为了加强居民的节水意识,某市制订了以下生活用水收费标准:每户每月用水未超过7 m 3时,每立方米收费1.0元,并加收0.2元的城市污水处理费;超过7m 3的部分,每立方收费1.5元,并加收0.4元的城市污水处理费.设某户每月用水量为x m 3,应交纳水费y 元,那么y 与x 之间的函数关系为 1.2,071.9 4.9,7x x y x x ≤≤⎧=⎨->⎩我们设计一个算法来求上述分段函数的值.算法步骤:第一步:输入用户每月用水量x .第二步:判断输入的x 是否不超过7. 若是,则计算 1.2y x =;若不是,则计算 1.9 4.9y x =-.第三步:输出用户应交纳的水费y .程序框图:2、算法步骤:第一步,令i =1,S=0.第二步:若i ≤100成立,则执行第三步;否则输出S.第三步:计算S=S+i 2.第四步:i = i +1,返回第二步.程序框图:3、算法步骤:第一步,输入人数x ,设收取的卫生费为m 元.第二步:判断x 与3的大小. 若x >3,则费用为5(3) 1.2m x =+-⨯;若x ≤3,则费用为5m =.第三步:输出m .程序框图:B 组 1、算法步骤:第一步,输入111222,,,,,a b c a b c .. 第二步:计算21121221b c b c x a b a b -=-. 第三步:计算12211221a c a c y a b a b -=-. 第四步:输出,x y .程序框图:。

高二数学必修3知识点:算法初步

高二数学必修3知识点:算法初步

高二数学必修 3 知识点:算法初步数学是利用符号语言研究数目、构造、变化以及空间模型等观点的一门学科。

以下是查词典数学网为大家整理的高二数学必修 3 知识点,希望能够解决您所碰到的有关问题,加油,查词典数学网向来陪同您。

1:算法的观点(1)算法观点:在数学上,现代意义上的算法往常是指能够用计算机来解决的某一类问题是程序或步骤,这些程序或步骤一定是明确和有效的,并且能够在有限步以内达成.(2)算法的特色 :①有限性:一个算法的步骤序列是有限的,一定在有限操作以后停止,不可以是无穷的.②确立性:算法中的每一步应当是确立的并且能有效地履行且获得确立的结果,而不该当是含糊其词 . ③次序性与正确性:算法从初始步骤开始,分为若干明确的步骤,每一个步骤只好有一个确立的后继步骤,前一步是后一步的前提,只有履行完前一步才能进行下一步,并且每一步都正确无误,才能达成问题 . ④不独一性:求解某一个问题的解法不必定是独一的,关于一个问题能够有不一样的算法 .与现在“教师”一称最靠近的“老师”观点,最早也要追忆至宋元期间。

金代元好问《示侄孙伯安》诗云:“伯安入小学,颖第1页/共2页悟非凡貌,属句有夙性,说字惊老师。

”于是看,宋元期间小学教师被称为“老师”有案可稽。

清朝称主考官也为“老师”,而一般学堂里的先生则称为“教师”或“教习”。

可见,“教师” 一说是比较晚的事了。

现在领会,“教师”的含义比之“老师”一说,拥有资历和学问程度上较低一些的差异。

辛亥革命后,教师与其余官员同样依法律委任,故又称“教师”为“教员”。

⑤广泛性:好多详细的问题,都能够设计合理的算法去解决,如默算、计算器计算都要经过有限、预先设计好的步骤加以解决 .教师范读的是阅读教课中不行缺乏的部分,我常采纳范读,让少儿学习、模拟。

如领读,我读一句,让少儿读一句,边读边记;第二通读,我高声读,我高声读,少儿小声读,边学边仿;第三赏读,我借用录好配朗诵磁带,一边放录音,一边少儿频频聆听,在频频聆听中体验、品尝。

人教版高中数学必修三 第一章 算法初步算法初步的归纳总结

人教版高中数学必修三 第一章 算法初步算法初步的归纳总结

算法初步的归纳总结随着计算机科学和信息技术的发展,算法已经渗透到人们的方方面面,算法思想有助于我们理解数学与计算机技术的关系,促进数学思想及计算机技术的发展。

在必修3第二章算法初步的内容主要是算法的基本思想、算法的基本结构及设计、排序问题和几种基本语句。

1、对算法的基本思想的学习可以根据书本的例题及平时生活中的实例从而了解算法是解决某类问题的一系列步骤或程序。

学习和理解算法的必要性,体会一个问题可能存在多种算法,有优劣之分,并且要在有限步骤内解决问题,对二分法要有初步认识。

如P91练习2.2(必修3)中的分油问题就需要用尽可能少的步骤来解决,而且存在多种方法。

通过以上的方法就能加深对算法基本思想的理解。

2、算法的基本结构及设计首先介绍顺序结构与选择结构。

了解按照依次执行的算法是“顺序结构”,而需要进行判断,判断的结果决定后面的步骤,这样的结构是“选择机构”。

在学习选择结构时可通过判断“一年是不是闰年”的例题加深记忆,注意开始结束框、处理框、指向线和输入输出框的形式和格式,学会使用流程图描述算法。

接着介绍算法中的重要概念——边量,以及如何给变量赋值,学习将常数赋予变量,将含其他变量的表达式赋予变量,将含有变量自身的表达式赋予变量,理解这些赋值方式的意义,切实学会通过赋值的方式改变变量的值。

再介绍的循环结构是算法的另一种重要结构。

了解什么是循环体,循环变量和循环的终止条件。

在使用循环来描述算法时要先确定循环变量和初始条件;确定算法中反复执行的部分——循环体;最后确定循环的终止条件。

在P108例10(必修3)中第二步就是确定循环变量和初始条件,设下标i为循环变量,3为i的初始值。

第二步确定循环体,算法中反复执行部分为:A i=A i-1+A i-2 ,输出A i。

最后一步确定终止条件当i>50时,算法结束。

并由此作出算法流程图。

再以此方法画出二分法算法的流程图就能大大加深印象。

3、排序问题主要讲的两种排序算法:直接插入排序算法和冒泡排序算法。

北师大版高中高二数学必修3《算法初步》教案及教学反思

北师大版高中高二数学必修3《算法初步》教案及教学反思

北师大版高中高二数学必修3《算法初步》教案及教学反思一、教学内容概述本节课的教学内容为《算法初步》,是高中高二数学必修3的一部分。

主要包括算法的概念、常见算法的分类、算法的思路以及问题的解法。

学生需要掌握算法的基本概念,理解常见的算法分类,学会利用具体的案例来解决问题。

在本课的教学过程中,着重培养学生的算法思维能力和实际解决问题的能力。

二、教学目标1.掌握算法的基本概念和常见的算法分类。

2.了解算法在实际问题中的应用。

3.培养学生的算法思维能力。

4.提高学生的实际运用算法进行问题解决的能力。

三、教学过程1. 导入环节我首先通过一个简单的小问题导入本节课的内容:假设你要在电脑里存储一些数据,如何更好地进行数据管理?通过这个问题引导学生思考如何应用算法来进行数据管理。

然后我向学生介绍了本节课的教学内容:算法初步。

我解释了什么是算法以及算法的重要性。

在此基础上,我向学生介绍了常见的算法分类以及算法的思路。

2. 讲解及演示我通过PPT讲解了各种算法分类的特点、应用以及实现方法,并结合具体的案例进行演示。

在演示过程中,我让学生自己动手模拟数据来实践演算法。

通过实践操作,学生可以更深刻地理解算法的思路和应用。

同时,我也让学生分享自己对于算法的理解和应用经验,鼓励他们在实际操作中不断地思考和总结。

3. 练习及测试在演示和讲解完毕之后,我设置了一些练习题来巩固学生掌握的知识,并通过一些测试题来检验学生的学习成果。

测试题设置了多种不同难度的问题,包括选择题、填空题和解答题等,帮助学生更全面地掌握算法的基本概念和使用方法。

4. 总结最后,我通过一些问题来总结本节课所学的内容,以便学生回顾整个学习过程并让他们更加深刻地理解算法的重要性和应用。

同时,我还向学生介绍了如何在日常生活中进行算法思维的应用,鼓励他们发挥创造力、勇于努力,将所学应用到生活中去。

四、教学反思通过本节课的教学,我发现学生在算法的理解和应用方面存在一些困难。

人教版高中数学-必修3第一章《算法初步》概述

人教版高中数学-必修3第一章《算法初步》概述

数学·必修3(人教A版)
本章概述
1.算法的含义、程序框图
(1)了解算法的含义,了解算法的思想.
(2)能根据问题设计运算(执行)步骤.
(3)
理解程序框图的三种基本逻辑结构:顺序、条件分支、循环.2.基本算法语句
理解几种基本算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句的含义.
算法是从2007年开始出现在高考中的,从目前情况看,已成为高考必考内容,现在各地高考中算法主要考查程序框图的阅读和理解,而且难度较小,今后高考不排除考查阅读程序语言、画程序框图甚至写程序语言.由于采用“一标多本”的模式,因此考查框图的可能性最大.
算法初步。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

高二数学必修三之算法初步
高中数学必修三第一章算法初步
一、选择题
1.右面的程序框图,如果输入三个实数,,a b c,要求输出这三个数中最大的数,那么在空白的判断框中,应该填入下
面四个选项中的()
(A)c x>(B)x c>(C)c b>(D)b c>
2.图1是某县参加2007年高考的学生身高条形统计图,从左
到右的各条形表示的学生人数依次记为A
1、A
2
、…、A
10
(如A
2表示身高(单位:cm)[)
150,155内的学生人数)。

图2是统
计图1中身高在一定范围内学生人数的一个算法
流程图。

现要统计身高在160~180cm(含160cm,不含180cm))的学生人数,那么在流程图中的判断框内应填写的条
件是()
A. 6
i< B. 7
i< C. 8
i< D. 9
i< 3.如果执行下左图的程序框图,那么输出的S=()A.2450 B.2500 C.2550 D.2652
4.阅读(上页右边图)的程序框图,若输入的n是100,则输出的变量S和T的值依次是()
(A)2500,2500(B)2550,2550(C)2500,2550(D)2550,2500
二、填空题
1.阅读图3的程序框图,若输入4
n=,则输出a=,
m=,6
i=.(注:框图中的赋值符号“=”也可以写成“←”
或“:=”)
2.某地区为了解7080
-岁的老人的日平均睡眠时间(单位:h),随机选择了50位老人进行调查,下表是这50位老人睡眠时间的频率分布表:
在上述统计数据的分析中一部分计算见算法流程图,则输出的S的值为.
3.执行右边的程序框图,若0.8
n=
p=,则输出的______.
各地市高三调研考试
一、选择题
1.【2008年3月济宁市高三复习第一阶段质量检测】如下左图,
该程序运行后输出的结果为( ) A . 1
B .2
C .4
D .16
2.【山东省德州市2008年3月高中三年级教学质量检测】如
果上边程序框图(上中图)的输出结果-18,那么在判断
框中①表示的“条件”应该是( )
A .9i ≥
B .8i ≥
C .7i ≥
D .6i ≥
3.【山东省潍坊淄博滨州枣庄等市2008学年度4月高三模拟
考试】如图(上右图)所示给出的是计算20
1614121++++ 的值的一个程序框图,其中判断框内填入的条件是( )
A.10
i D.20
<
>
i >
i C.20
i B.10
<
4.【山东省日照市2008年3月高三模拟考试】如下左图给出了一个算法流程图,该算法流程图的功能是()
A.求a,b,c三数中的最大数 B. 求a,b,c 三数中的最小数
C. 将a,b,c按从小到大排列
D. 将a,b,c 按从大到小排列
5.【山东省师大附中2008届高三5月统一考试】上页右图是一个算法的程序框图,该算法输出的结果是()
A.1
2 B. 2
3
C.3
4
D. 4
5
6.【山东省济南市2008年4月高考模拟试题】算法 S
1
:输入n,
S
2
:判断n是否是2
若2
n=,则n满足条件
若2
n>,则执行3S
S
3:依次从2到1
n-检验能不能整除n,若不能整除n满足条
件,上述满足条件的()
A.质数B.奇数C.偶数D.4的倍数
7.【2008届广州市】如图1所示,是关于判断闰年的流程图,则以下年份是闰年的为()
A.1996年 B.1998年 C.2010年 D.2100年
8.下面程序运行的结果是()
i=1
s=0
WHILE i<=100
S=s+i
i=i+1
WEND
PRINT s
END
A.5050 B.5049 C.3 D.2
参考答案
一、选择题
1.【标准答案】 A
【试题解析】由流程图可知第一个选择框作用是比较x 与b 的大小,故第二个选择框的作用应该是比较x 与c 的大小,
故应选A;
【高考考点】算法中的判断语句等知识。

【易错点】不能准确理解流程图的含义而导致错误。

【学科网备考提示】算法是新课程中的新增加的内容,也必然
是新高考中的一个热点,应高度重视。

2.【解】C 方法一:4567
S A A A A =+++; 方法二:现要统计的是身高在160-180cm 之间的学生的人数,
即是要计算A 4、A 5、A 6、A 7的和,故流程图中空白框应是
i<8,当i<8时就会返回进行叠加运算,当8i ≥将数据直接
输出,不再进行任何的返回叠加运算,此时已把数据A 4、
A 5、A 6、A 7叠加起来送到S 中输出,故选C 。

3.【解】【答案】 C
【分析】 由程序知,15021222502502550.2S +=⨯+⨯++⨯=⨯⨯=
4.【答案】D 【解析】依据框图可得1009896...22550S =++++=, 999795...12500T =++++=。

【高考考点】程序框图、数列的简单求和
【易错提醒】对控制变量没有“控制”好,而导致运算次数多
或少。

【学科网备考提示】程序框图作为新课标中的一种新的题目类
型,在今后高考试题中应该多有体现,结合数列、不等
式、函数等知识会有更多的命题空间。

.
二、填空题
1.【标准答案】12,3。

【试题解析】要结束程序的运算,就必须通过n 整除a 的条件运算,而同时m 也整除a ,那么a 的最小值应为m 和n 的最小公倍数12,即此时有3i =。

【高考考点】程序流程图。

【易错提醒】当从1i =开始逐一验证找出结果时,容易发生计算失误。

【学科网备考提示】程序的算法与流程图是新课标...
新增加的内容,考查难度并不是很大,复习重点应该放于流程图的读
写。

2.【解析】由流程图
1122334455S G F G F G F G F G F =++++ 4.50.12 5.50.20 6.50.407.50.28.50.08=⨯+⨯+⨯+⨯+⨯ 6.42=.
【答案】6.42.
3.【标准答案】4. 【试题分析】1
110.8248
++>,因此输出 4.n =
【高考考点】程序框图 【易错提醒】没有注意到控制变量....1n n =+在12
n S S =+之后误填..3。

【学科网备考提示】理解程序框图的顺序、条件、循环三种基本逻辑结构,尤其要注意循环结构中的循环体和控制变量的作用.
2008届课改省各地市高三调研考试
一、选择题
1.D 2.A 3.A 4.B 5.C 6.A
7.A 8. A。

相关文档
最新文档