版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第3 3讲算法初步、框图讲算法初步、框图【学习目标【学习目标】1了解算法的含义、了解算法的思想;理解程序框图了解算法的含义、了解算法的思想;理解程序框图的三种基本逻辑结构:顺序、条件分支、循环的三种基本逻辑结构:顺序、条件分支、循环2理解几种基本算法语句理解几种基本算法语句输入语句、输出语句、赋输入语句、输出语句、赋值语句、循环语句的含义值语句、循环语句的含义3初步了解几个典型算法案例初步了解几个典型算法案例【基础检测】【基础检测】1流程图中表示判断框的是流程图中表示判断框的是( )A矩形框矩形框B菱形框菱形框 C圆形框圆形框D椭圆形框椭圆形框B【解析【解析】注意分清流程图中三种基本逻辑结构
2、,输注意分清流程图中三种基本逻辑结构,输入语句、输出语句、赋值语句、条件语句、循环语入语句、输出语句、赋值语句、条件语句、循环语句的表示方法句的表示方法2下图是某算法流程图的一部分,其算法的逻辑下图是某算法流程图的一部分,其算法的逻辑结构为结构为( )A顺序结构顺序结构 B判断结构判断结构C条件结构条件结构 D循环结构循环结构C【解析【解析】理解程序框图的三种基本逻辑结构理解程序框图的三种基本逻辑结构3(2011福建福建)运行如图所示的程序,输出的结果是运行如图所示的程序,输出的结果是 .3【解析【解析】a1,b2,把,把1与与2的和赋给的和赋给a,即即a3,输出的结果是,输出的结果是3.4用
3、秦九韶算法求多项式用秦九韶算法求多项式f(x)12xx23x32x4在在x1时的值时的值v2的结果是的结果是( )A4 B1 C5 D6D【解析【解析】v0a42,a33,a21,a12,x1.由秦九韶算法的递推关系式得由秦九韶算法的递推关系式得v1v0 xa35,v2v1xa26,故选,故选D.5把把5进制进制412(5)化为化为7进制是进制是 .212(7)【知识要点【知识要点】1算法与程序框图算法与程序框图(1)算法:通常指可以用计算机来解决某一类问题的程算法:通常指可以用计算机来解决某一类问题的程序或步骤,这些程序或步骤必须是序或步骤,这些程序或步骤必须是 和和 ,而且能够在有限步之内
4、完成而且能够在有限步之内完成明确明确有序的有序的(2)程序框图的三种逻辑结构:程序框图的三种逻辑结构:顺序结构:顺序结构: 算法,如右图算法,如右图1:条件结构:在一个算法中,经常会遇到一些条件的条件结构:在一个算法中,经常会遇到一些条件的判断,判断, ,条件,条件结构就是处理这种过程的结构,如图结构就是处理这种过程的结构,如图2. 循环结构:从某处开始,循环结构:从某处开始, 的情况,这就是循环结构反复执的情况,这就是循环结构反复执行的步骤称为行的步骤称为 按照步骤依次执行的一个按照步骤依次执行的一个根据给定的条件是否成立有不同的流向根据给定的条件是否成立有不同的流向按一定的条件反复按一定的
5、条件反复执行某些步骤执行某些步骤 循环体循环体循环结构的两种类型:循环结构的两种类型:) :在每次循环前进:在每次循环前进行条件判断,成立才循环,不满足则停止,故通常又叫行条件判断,成立才循环,不满足则停止,故通常又叫做做“是循环是循环”,“while型循环型循环”;) :在:在执行了一次循环后,对条件进行判断,不满足才执行循执行了一次循环后,对条件进行判断,不满足才执行循环,满足则停止,故又叫做环,满足则停止,故又叫做“否循环否循环”,“until型循环型循环”如图所示如图所示当型循环当型循环直到型循环直到型循环2基本算法语句基本算法语句(1)输入、输出语句和赋值语句:输入、输出语句和赋值语
6、句:输入语句格式:输入语句格式: ;输出语句格式:输出语句格式: ;赋值语句格式:赋值语句格式: .INPUT “提示内容提示内容”;变量;变量PRINT “提示内容提示内容”;表达式;表达式变量表达式变量表达式(2)条件语句:条件语句:框图:框图:条件语句格式:条件语句格式:IF条件条件THEN语句语句1ELSE语句语句2END IF条件语句的嵌套:条件语句条件语句的嵌套:条件语句 ,当出现当出现3个或个或3个以上的判断点时,就要用到个以上的判断点时,就要用到 ,其一般格式为:,其一般格式为:IF条件条件1THEN语句序列语句序列1;ELSEIF条件条件2THEN语句序列语句序列2ELSE语
7、句序列语句序列3END IFEND IF主要用于实现算法主要用于实现算法的条的条程序嵌套程序嵌套件结构件结构(3)循环语句:循环语句:WHILE语句的结构:语句的结构:WHILE语句的一般格式:语句的一般格式:WHILE条件条件循环体循环体WENDUNTIL语句的结构:语句的结构:UNTIL语句的一般格式:语句的一般格式:DO循环体循环体LOOP UNTIL条件条件3算法案例算法案例(1)辗转相除法与更相减损术辗转相除法与更相减损术辗转相除法:辗转相除法: 反复操作,直到余反复操作,直到余数为数为0为止,即为止,即mntr(0rn)因此要用因此要用“后测试后测试型型”循环语句表示,其程序如下:
8、循环语句表示,其程序如下:求两个正整数的最大公约数的方法,求两个正整数的最大公约数的方法, 用较大的数用较大的数m除以较小的数除以较小的数n得到余数得到余数r INPUT m,nDOrm MOD nmnnrLOOP UNTIL r0PRINT mEND更相减损术是更相减损术是 .用较大数减去较小数,再用差数和较小数构成一对新用较大数减去较小数,再用差数和较小数构成一对新数,再用大数减去小数,以同样的操作一直做下去,数,再用大数减去小数,以同样的操作一直做下去,直到所得的数相等为止这一过程可由循环语句表达直到所得的数相等为止这一过程可由循环语句表达算法,其程序如下:算法,其程序如下:求两个正整数
9、的最大公约数的算法求两个正整数的最大公约数的算法INPUT a,bWHILE abIF ab THENaabELSE bbaEND IFWENDPRINT a,bEND(2)秦九韶算法秦九韶算法n次多项式次多项式f(x)anxnan1xn1a1xa0(anxn1an1xn2a1)xa0(anxan1)xan2)xa1)xa0得到递推公式得到递推公式v0an且且vkvk1xank,其中,其中k1,2,n其算法可用循环语句来实现其算法可用循环语句来实现(3)进位制进位制将十进制数化为二进制数的算法称为将十进制数化为二进制数的算法称为 ;将十进制数化为;将十进制数化为k进制数的算法称进制数的算法称为
10、为 将将k进制数化为十进制数的算法步骤为:进制数化为十进制数的算法步骤为:一步:从左到右依次取一步:从左到右依次取k进制数进制数anan1a1a0(k)各位各位上的数字乘以上的数字乘以k次幂,次幂,k从从n开始取值,每次递减开始取值,每次递减1,递减到递减到0,即,即ankn,an1kn1,a1k,a0k0;第二步:把所有积加起来,就得到十进制数第二步:把所有积加起来,就得到十进制数 除除2取余法取余法除除k取余法取余法 一、程序框图及应用一、程序框图及应用例例1(1)(2011江西江西)下图是某算法的程序框图,则程序下图是某算法的程序框图,则程序运行后输出的结果是运行后输出的结果是 ;102
11、3(3)如下图所示,若程序框图输出的结果为如下图所示,若程序框图输出的结果为S90,那么,那么判断框中应填入的关于判断框中应填入的关于k的条件是的条件是( )Ak9? Bk8?Ck8?B【解析【解析】(1)程序运行后,程序运行后,S0(1)110,n2;S0(1)223,n3;S3(1)335,n4;S5(1)44109,故输出的结果是,故输出的结果是10.【点评【点评】考查了循环结构的程序框图、方差公式,考查考查了循环结构的程序框图、方差公式,考查了学生的视图能力以及观察、推理的能力了学生的视图能力以及观察、推理的能力熟悉基本理论,能识别框图所体现和表述的算法是本例熟悉基本理论,能识别框图所
12、体现和表述的算法是本例问题求解的关键和切入点同时也体现了问题求解的关键和切入点同时也体现了“图与式图与式”的的转化能力的培养与提升的重要性转化能力的培养与提升的重要性二、算法语句及运用二、算法语句及运用例例2编写一个程序,统计其中的正数的个数编写一个程序,统计其中的正数的个数【解析】解法一:【解析】解法一:程序框图程序框图程序:程序:n0m0WHILEn0THENmm1END IFWENDPRINTmEND解法二:解法二:程序框图程序框图程序:程序:n0m0DOINPUTxnn1IFx0THENmm1ENDIFLOOP UNTIL n20PRINT mEND【点评【点评】(1)在用在用WHIL
13、E语句和语句和UNTIL语句编写程序语句编写程序解决问题时,一定要注意它们的格式及条件的表述方解决问题时,一定要注意它们的格式及条件的表述方法法WHILE语句中是当条件满足时执行循环体,而语句中是当条件满足时执行循环体,而UNTIL语句中是当条件不满足时执行循环体语句中是当条件不满足时执行循环体(2)在解决一些需要反复执行的运算任务,如累加求和在解决一些需要反复执行的运算任务,如累加求和、累乘求积等问题中应主要考虑利用循环语句来实现、累乘求积等问题中应主要考虑利用循环语句来实现三、算法案例三、算法案例例例3(1)用辗转相除法或更相减损术求用辗转相除法或更相减损术求375和和85的最大公的最大公
14、约数;约数;(2)用秦九韶算法计算用秦九韶算法计算f(x)x52x43x34x25x6在在x2时的值;时的值;(3)将七进制数将七进制数235(7)转化为八进制数转化为八进制数【解析【解析】(1)用辗转相除法:用辗转相除法:37585435853521535152515350375与与85的最大公约数为的最大公约数为5.用更相减损术:用更相减损术:375852902908520520585120120853585355050351535152020155155101055.375与与85的最大公约数为的最大公约数为5.(2)f(x)(x2)x3)x4)x5)x6v01;v1v0 x21224;
15、v2v1x342311;v3v2x4112426;v4v3x5262557;v5v4x65726120.多项式多项式f(x)在在x2时的值时的值f(2)120.(3)先化成十进制,再化成八进制先化成十进制,再化成八进制235(7)272375124124174(8),即,即235(7)174(8)【点评【点评】掌握三种特殊算法的求解思想和方法是问掌握三种特殊算法的求解思想和方法是问题顺利解决的前提和必要条件题顺利解决的前提和必要条件四、程序框图与基本算法语句的实际应用四、程序框图与基本算法语句的实际应用 例例4某企业生产的某种产品经市场调查得到如下信息,在某企业生产的某种产品经市场调查得到如下
16、信息,在不做广告宣传时月销售量为不做广告宣传时月销售量为1000件;若做广告宣传,月销件;若做广告宣传,月销售量售量S件与广告费件与广告费n千元千元(nN*)的关系可用右边流程图来的关系可用右边流程图来表示:表示:(1)根据流程图,试写出广告费根据流程图,试写出广告费n分别等于分别等于1千元和千元和2千元时千元时所对应的月销售量所对应的月销售量S的值;的值;(2)试写出月销售量试写出月销售量S与广告费与广告费n千元的函数关系式;千元的函数关系式;(3)若销售一件产品纯获利若销售一件产品纯获利10元,该企业做几千元广告时,元,该企业做几千元广告时,才能月获利最多,最多是多少?才能月获利最多,最多
17、是多少?(利润售价成本,其利润售价成本,其中成本包含广告费中成本包含广告费)备选题例备选题例5给出给出50个数个数1,2,4,7,11,其规律是:第,其规律是:第1个数是个数是1,第,第2个数比第个数比第1个数大个数大1,第,第3个数比第个数比第2个数大个数大2,第,第4个数比第个数比第3个数大个数大3,以此类推,要求计算这,以此类推,要求计算这50个数的和个数的和(1)把下图的程序框图补充完整;把下图的程序框图补充完整;(2)根据程序框图写出程序根据程序框图写出程序【解析【解析】(1)i50?ppi(2)程序如下:程序如下:i1p1S0WHILEi50SSpppiii1WENDPRINTSE
18、ND【点评【点评】本题是一个循环结构,应注意搞清循本题是一个循环结构,应注意搞清循环的条件,以及循环体环的条件,以及循环体1了解算法思想,理解算法含义的关键在于体现程了解算法思想,理解算法含义的关键在于体现程序或步骤的明确性和有效性序或步骤的明确性和有效性2深刻理解三种程序框图的属性与特征,需通过实深刻理解三种程序框图的属性与特征,需通过实际例子体会算法流程的全过程,认清所解决问题的际例子体会算法流程的全过程,认清所解决问题的实质如解决分段函数的求值问题时,一般采用条实质如解决分段函数的求值问题时,一般采用条件结构设计算法;如累加求和,累乘求积等问题,件结构设计算法;如累加求和,累乘求积等问题
19、,往往包含循环过程,非常适合计算机处理,这类问往往包含循环过程,非常适合计算机处理,这类问题很多程序框图都用循环结构进行设计,同时也要题很多程序框图都用循环结构进行设计,同时也要注意三种基本结构的共同特点注意三种基本结构的共同特点3特别提醒的是,程序框图主要包括三个部分:特别提醒的是,程序框图主要包括三个部分:(1)弄清相应操作框的内容;弄清相应操作框的内容;(2)带箭头的流程线及判断带箭头的流程线及判断框的条件;框的条件;(3)框内外必要的文字说明和算法功能框内外必要的文字说明和算法功能读懂流程图要从这三方面研究,流程线反映了流程读懂流程图要从这三方面研究,流程线反映了流程执行的先后顺序,主
20、要看箭头方向,框内外文字说执行的先后顺序,主要看箭头方向,框内外文字说明了操作内容以及流向明了操作内容以及流向4(1)辗转相除法与更相减损术是求两个正整数的最大辗转相除法与更相减损术是求两个正整数的最大公约数的两种方法,关键是掌握这两种算法的操作步骤公约数的两种方法,关键是掌握这两种算法的操作步骤,计算时应认真、细心,确保中间结果的准确性,因为,计算时应认真、细心,确保中间结果的准确性,因为下一次计算要用到上一次计算的结果下一次计算要用到上一次计算的结果(2)利用利用“除除k取余法取余法”将十进制数化为将十进制数化为k进制数时,要把进制数时,要把各步所得余数从下到上排,切莫把顺序弄错各步所得余
21、数从下到上排,切莫把顺序弄错(3)利用秦九韶算法计算多项式的值的关键是正确地将多利用秦九韶算法计算多项式的值的关键是正确地将多项式改写,然后由内向外逐次计算由于本次计算用到项式改写,然后由内向外逐次计算由于本次计算用到上一次计算的结果,同样应认真、细致地计算每一步,上一次计算的结果,同样应认真、细致地计算每一步,确保每一步结果的准确性确保每一步结果的准确性(1)(2011陕西陕西) 下图中下图中x1,x2,x3为某次考试三个评阅人为某次考试三个评阅人对同一道题的独立评分,对同一道题的独立评分,p为该题的最终得分当为该题的最终得分当x16,x29,p8.5时,时,x3等于等于( )A11 B10
22、C8 D7C(2)(2011安徽安徽)如下图,程序框图如下图,程序框图(算法流程图算法流程图)的输出的输出结果是结果是 .15【命题立意【命题立意】(1)本题主要考查程序框图的循环结构本题主要考查程序框图的循环结构以及读图,识图的能力以及读图,识图的能力(2)本题是程序框图题,考查了程序框图中的循环结本题是程序框图题,考查了程序框图中的循环结构,题目较易,但在确定最后输出的构,题目较易,但在确定最后输出的k值时易误认为值时易误认为14而出错而出错1下列给出的赋值语句中正确的是下列给出的赋值语句中正确的是( )A4M BMMCBA3Dxy0BB3(2011辽宁辽宁)执行如下图所示的程序框图,如果输执行如下图所示的程序框图,如果输入的入的n是是4,则输出的,则输出的p是是( ) CA8 B5 C3 D2【解析【解析】第一次运行:第一次运行:p1,s1,t1,k2;第二次运行:第二次运行:p2,s1,t2,k3;第三次运行:第三次运行:p3,s2,t3,k4不满足不满足kn.故输出故输出p为为3.4以下给出计算以下给出计算246100的值的四个程序,的值的四个程序,其中正确的是其中正确的是( )B5根据下图所示的程序,当输入的根据下图所示的程序,当输入的m,n分别为分别为30
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论