资源预览内容
第1页 / 共78页
第2页 / 共78页
第3页 / 共78页
第4页 / 共78页
第5页 / 共78页
第6页 / 共78页
第7页 / 共78页
第8页 / 共78页
第9页 / 共78页
第10页 / 共78页
亲,该文档总共78页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
主备人:主备人:向姸燕向姸燕 王廷伟王廷伟 唐强唐强审核:审核:牟必继牟必继 随着计算科学和信息技术的飞速发展,随着计算科学和信息技术的飞速发展,算法思想算法思想已经渗透到社会的方方面面在以已经渗透到社会的方方面面在以前的学习中,虽然没有出现前的学习中,虽然没有出现算法算法这个名词,这个名词,但实际上在数学学习中已经渗透了大量的算但实际上在数学学习中已经渗透了大量的算法思想,如四则运算的过程、求解方程的步法思想,如四则运算的过程、求解方程的步骤等等完成这些工作都需要骤等等完成这些工作都需要一系列程序化一系列程序化的步骤的步骤,这就是算法的思想,这就是算法的思想 1.1.1 1.1.1 算法的概念算法的概念先算括号里面先算括号里面再乘除再乘除后加减后加减什么是算法呢?什么是算法呢?1. 6+5(4-2) 要把大象装冰箱,分几步?要把大象装冰箱,分几步?答:分三步:答:分三步:第一步:打开冰箱门第一步:打开冰箱门第二步:把大象装冰箱第二步:把大象装冰箱第三步:关上冰箱门第三步:关上冰箱门问:问:问题问题2 广义地说,算法就是解决广义地说,算法就是解决问题的程序或步骤问题的程序或步骤。什么是算法呢?什么是算法呢?问题问题3: “鸡兔同笼鸡兔同笼”是我国隋朝时期的数学著是我国隋朝时期的数学著作作孙子算经孙子算经中的一个有趣而具有深远影响的中的一个有趣而具有深远影响的题目:题目: “今有鸡兔同笼,上有十七头,下有四十今有鸡兔同笼,上有十七头,下有四十八足,问:鸡兔各几只?八足,问:鸡兔各几只?” 解:算术方法:如果没有小兔,那么小鸡解:算术方法:如果没有小兔,那么小鸡应为应为17只,总的腿数应为只,总的腿数应为217=34条,但条,但现在有现在有48条腿,造成腿的数目不够是由于条腿,造成腿的数目不够是由于小兔的数目为小兔的数目为0,每有一只小兔便会增加,每有一只小兔便会增加两条腿,故应有两条腿,故应有(48172) 2=7只小兔。只小兔。相应的,小鸡有相应的,小鸡有10只。只。代数方法:设有代数方法:设有x只小鸡,只小鸡,y只小兔只小兔. 则则第一步第一步, ,(消元)(消元)-2,得,得 2y=14 2y=14 第二步第二步, , (解一元一次方程)(解一元一次方程)解解得得y=7第三步第三步, ,(代入求解)代入求解)将将 y=7 代入代入,得得x=10法一法一写出解第二个写出解第二个方程组的算法:方程组的算法:第一步第一步, ,第二步第二步, ,第三步第三步, ,解,得 变一变变一变b2-b1 ,得(a1b2-a2b1)x=b2c1-b1c2 第四步第四步, , 解,得第五步第五步, ,方程组的解为得a2-a1 ,算法的概念算法的概念12世世纪纪的的算法算法指的是用阿拉伯数字指的是用阿拉伯数字进进行行_的的过过程程数学数学中的中的算法算法通常是指按照通常是指按照_解决某一解决某一类类问题问题的的_和和_的步的步骤骤现现代代算法算法通常可以通常可以编编成成_,让计让计算机算机执执行并解决行并解决问题问题一定规则明确有限计算机程序算术运算算法的要求算法的要求(1)写出的算法写出的算法,必须能解决一类问题必须能解决一类问题(例如解任例如解任意一个二元一次方程组意一个二元一次方程组),并且能重复使用并且能重复使用;(2) 算法过程要能一步一步执行算法过程要能一步一步执行,每一步执行的每一步执行的操作操作,必须确切必须确切,不能含混不清不能含混不清,而且在有限步之而且在有限步之内完成后能得出结果内完成后能得出结果.例例1(1)设计一个算法设计一个算法,判断判断7是否为质数是否为质数;(1)(1)第一步第一步, ,用用2除除7,得到余数得到余数1.因为余数不为因为余数不为0,所以所以2不能整除不能整除7.第二步第二步, ,用用3除除7,得到余数得到余数1.因为余数不为因为余数不为0,所以所以3不能整除不能整除7.第三步第三步, ,用用4除除7,得到余数得到余数3.因为余数不为因为余数不为0,所以所以4不能整除不能整除7.第四步第四步, ,用用5除除7,得到余数得到余数2.因为余数不为因为余数不为0,所以所以5不能整除不能整除7.第五步第五步, ,用用6除除7,得到余数得到余数1.因为余数不为因为余数不为0,所以所以6不能整除不能整除7.因此因此,7是质数是质数.(2)设计一个算法设计一个算法,判断判断35是否为质数是否为质数. 第一步第一步, ,用2除35,得到余数1.因为余数不为0,所以2不能整除35.第二步第二步, ,用3除35,得到余数2.因为余数不为0,所以3不能整除35.第三步第三步, ,用4除35,得到余数3.因为余数不为0,所以4不能整除35.第四步第四步, ,用5除35,得到余数0.因为余数为0,所以5能整除35.因此,35不是质数.例例2 2:设计一个算法,判断设计一个算法,判断19971997是否为质数是否为质数 第一步:用第一步:用2 2除除19971997得到余数不是得到余数不是0 0,所以不能被,所以不能被2 2整除整除第二步:用第二步:用3 3除除19971997得到余数不是得到余数不是0 0,所以不能被,所以不能被3 3整除整除第三步:用第三步:用4 4除除19971997得到余数不是得到余数不是0 0,所以不能被,所以不能被4 4整除整除第一九九五步:用第一九九五步:用19961996除除19971997得到余数不是得到余数不是0 0,所以,所以 不能被不能被19961996整除整除。因此因此,1997是质数是质数.是不确定是不确定的,与算法的确的,与算法的确定性矛盾,所以定性矛盾,所以他不表示算法他不表示算法例例2 2:设计一个算法,判断设计一个算法,判断19971997是否为质数是否为质数 第一步:令第一步:令i=2i=2第二步:用第二步:用i i除除19971997得余数得余数r r第三步:判断第三步:判断“r=0”“r=0”是否成立,若是则是否成立,若是则19971997不是不是质质 数,结束算法,否则将数,结束算法,否则将i i的值增加的值增加1 1,仍用,仍用 i i表示表示第四步:判断第四步:判断“i1996”“i1996”是否成立,若是则是否成立,若是则19971997是质是质数数 结束算法,否则返回第二步结束算法,否则返回第二步探究能你写出能你写出”判断整数判断整数n(n2)是否为质数是否为质数”的算法吗的算法吗? 第一步第一步, ,给定大于2的整数n. 第二步第二步, ,令i=2. 第三步第三步, ,用i除n,得到余数r. 第四步第四步, ,判断”r=0”是否成立.若是,则n不是质数,结束算法;否则,将i的值增加1,仍用i表示. 第五步第五步, ,判断”i(n-1)”是否成立.若是,则n是质数,结束算法;否则,返回第三步.算法的基本特征算法的基本特征: :明明确确性性: :算算法法对对每每一一个个步步骤骤都都有有确确切切的的、非非二二义义性性的的规规定定, ,即即每每一一步步对对于于利利用用算算法法解解决决问问题题的的人人或或计计算算机机来来说说都都是是可可读读的的、可可执执行行的的, ,而而不不需需要计算者临时动脑筋要计算者临时动脑筋. . 有有效效性性: :算算法法的的每每一一个个步步骤骤都都能能够够通通过过基基本本运运算算有有效效地地进进行行, ,并并得得到到确确定定的的结结果果;对对于于相相同同的的输输入入, ,无无论论谁谁执执行行算算法法, ,都都能能够够得得到到相相同同的的最最终终结果结果有限性有限性: :算法应由有限步组成算法应由有限步组成, ,至少对某些输入至少对某些输入, ,算法应在有限多步内结束算法应在有限多步内结束, ,并给出计算结果并给出计算结果信信息息输输出出:一一个个算算法法至至少少要要有有一一个个有有效效的的信信息息输出输出,这就是问题求解的结果这就是问题求解的结果.不不唯唯一一性性:求求解解某某一一个个题题的的解解法法不不一一定定是是唯唯一的一的, 对于一个问题可以有不同的算法对于一个问题可以有不同的算法.算法的描述算法的描述: : 描描述述算算法法可可以以有有不不同同的的方方式式, ,常常用用的的有有自自然语言、程序框图、程序设计语言、伪代码然语言、程序框图、程序设计语言、伪代码等等. .数数据据输输入入: :算算法法一一定定要要根根据据输输入入的的初初始始数数据据或或给定的初值才能正确执行它的每一步骤给定的初值才能正确执行它的每一步骤. . 自自然然语语言言就就是是人人们们日日常常使使用用的的语语言言, ,可可以以是是汉汉语语、英英语语或或数数学学语语言言等等. .用用自自然然语语言言描描述述算算法法的的优优点点是是通通俗俗易易懂懂, ,当当算算法法中中的的操操作作步步骤骤都都是是顺顺序序执执行行时时比比较较容容易易理理解解. .缺缺点点是是如如果果算算法法中中包包含含判判断断和和转转向向, ,并并且且操操作作步步骤骤较较多多时时, ,就就不不那那么么直直观观清晰了清晰了. .(1)(1)自然语言自然语言(2)(2)程序框图程序框图(3)(3)程序设计语言程序设计语言1.1.21.1.2程序框图程序框图中讲解中讲解1.21.2基本算法语句基本算法语句中讲解中讲解 例3 写出用“二分法”求方程 近似解的算法二分法:把满足 的函数 的零点所在的区间 “一分为二”为区间 根据 是否成立,找出零点所在的区间,仍记做 对所得的区间重复以上步骤,直到包含零点的区间 “足够小”,那么此区间 内的数即为方程的近似解 例3 写出用“二分法”求方程 近似解的算法第一步:令给定精确度d第三步:取区间中点含零点的区间为第四步:若则含零点的区间为否则,将新得到的含零点的区间仍记为第二步:确定区间满足第五步:判断的长度是否小于d或f(m)是否等0若是,则m是方程的近似值;否则,返回第三步例如:P4练习1.1.下列关于算法的说法中正确的是下列关于算法的说法中正确的是( ( ) ) D. .算法可以无限的操作下去不停止。算法可以无限的操作下去不停止。B. .算法执行后可以不产生确定的结果。算法执行后可以不产生确定的结果。C. .解决某一类问题的算法不是唯一的。解决某一类问题的算法不是唯一的。A. .算法就是某个问题的解题过程。算法就是某个问题的解题过程。D2.2.下面对算法的特征描述准确的一项是下面对算法的特征描述准确的一项是( ) ( ) A.明确明确 B.B.有效有效 C.C.步骤有限步骤有限 D.D.以上都对以上都对C3.3.下面四种叙述能称为算法的是下面四种叙述能称为算法的是( ) ( ) A.吃饭吃饭 B.B.做饭做饭 C C.步骤有限步骤有限 D.D.先买菜,再做饭,再吃饭,最后刷碗先买菜,再做饭,再吃饭,最后刷碗D4.4.下列说法不是算法的是下列说法不是算法的是( )( ) A.解方程解方程3x-9=0的过程就移项再把系数化成的过程就移项再把系数化成1B.B.从西华到北京先坐汽车到郑州再坐火车从西华到北京先坐汽车到郑州再坐火车C.解不等式解不等式2x-10A.利用公式利用公式S=r2计计算半径算半径为为3的的圆圆的面的面积积就是就是 计计算算32C算法算法1 1:第一步:取第一步:取n=100n=100;第二步:计算第二步:计算第三步:写出运算结果第三步:写出运算结果写出求写出求1+2+3+ 1+2+3+ +100 +100的一个算法的一个算法你会了吗?你会了吗?21.p5练习第一步:计算1+2,得3;第二步:将第一步中的运算结果3与3相加得6;第三步:将第二步中的运算结果6与4相加得10;第九十九步:将第九十八步中的运算结果4950与100 相加得5050.算法2.第一步:令i=1,s=0第二步:将s+i的值重新赋值给s,i的值加1第三步:判断i100是否成立,如成立,则输出s 的值,结束算法;否则返回第二步。3、y与与x之间的函数关系为之间的函数关系为:(当当0x7时时)(当当x7时时)写出函数值的算法写出函数值的算法:第一步第一步:输入每月用水量输入每月用水量x;第二步第二步:判断判断x是否不超过是否不超过7.若是若是,则则y=1.2x;若否若否,则则y=1.9x-4.9.第三步第三步:输出应交纳的水费输出应交纳的水费y.1.1.2 程序框图与算法的基本逻辑结构 1. 在数学中,算法通常是指按照一定规则 解决某一类问题的明确和有限的步骤.温故知新2. 算法的特征:有限性明确性普适性 不唯一性逻辑性任意给定一个大于2的整数n,试设计一个算法对n是否为质数做出判定.算法分析:前面我们知道:算法可以用自然语言来描述.第一步,给定大于第一步,给定大于2的整数的整数n第二步,令第二步,令i=2第三步,用第三步,用i除除n,得到余数,得到余数r第四步,判断第四步,判断“r=0”是否成立,若是,则是否成立,若是,则n不不 是质数,结束算法;否则令是质数,结束算法;否则令i=i+1第五步,判断第五步,判断“i(n-1)”是否成立,若是,是否成立,若是,则则n是质数,结束算法;否则返回第三步是质数,结束算法;否则返回第三步算法步骤有明确的顺序,有的步骤只有在一定算法步骤有明确的顺序,有的步骤只有在一定的条件下执行,有的步骤会重复执行。所以的条件下执行,有的步骤会重复执行。所以用程序框图表示的算法更加简练用程序框图表示的算法更加简练,直观直观,流向清楚流向清楚程序框图程序框图又称流程图又称流程图,是一种用程序框、流是一种用程序框、流程线及文字说明来准确、直观地表示算法的图程线及文字说明来准确、直观地表示算法的图形形.一个或几个程序框的组合表示算法中的一个步骤一个或几个程序框的组合表示算法中的一个步骤;带有方向箭头的流程线将程序框连接起来带有方向箭头的流程线将程序框连接起来,表示表示算法步骤的执行顺序算法步骤的执行顺序.图形符号图形符号名称名称功能功能终止框终止框(起止框起止框)输入、输出框输入、输出框处理框处理框(执行框执行框)流程线流程线连接点连接点表示一个算法的起始和结束表示一个算法输入和输出的信息 赋值、计算判断某一条件是否成立,成立时在出口处标明“是”或“Y”; 不成立时标明“否”或“N”连接程序框连接程序框图的两部分判断框判断框注:1、每个程序框图都必须要有起止框2、判断框有一个入口两个出口,其它的都只有一个入口一个出口。开始开始输入输入ni=2求求n除以除以i的余数的余数ri的值增加的值增加1仍用仍用i表示表示in-1或或r=0?输出输出“n不是质数不是质数”结束结束是是否否是是输出输出“n是质数是质数”否否r=0?设设n是一个大是一个大于于2的整数的整数.一般用一般用i=i+1表示表示. i=i+1也可以用也可以用图形方式图形方式来表示来表示(程序框(程序框图)图)思考思考?通过上述算法的两种不同表达方式的比较通过上述算法的两种不同表达方式的比较,你觉得用程序框图来表达算法有哪些特点你觉得用程序框图来表达算法有哪些特点?用程序框图表示的算法更加简练用程序框图表示的算法更加简练,直观直观,流向清楚流向清楚.(1 1)使用标准的图形符号。)使用标准的图形符号。(2 2)框图一般按从上到下,从左到右的方向画。)框图一般按从上到下,从左到右的方向画。 (3 3)除判断框外,大多数流程图符号只有一个)除判断框外,大多数流程图符号只有一个进入点和一个退出点。判断框具有超过一个退出进入点和一个退出点。判断框具有超过一个退出点的唯一符号。点的唯一符号。 (4 4)判断框分两大类,一类判断框)判断框分两大类,一类判断框“是是”与与“否否”两分支的判断,而且又且仅有两个结果;两分支的判断,而且又且仅有两个结果;(5 5)在图形符号内描述的语言要非常简练清)在图形符号内描述的语言要非常简练清楚。楚。 开始开始输入输入ni=2求求n除以除以i的余数的余数ri=i+1in-1或或r=0?结束结束是是否否是是否否r=0?顺序结构用程序框图来表示算法, 有三种不同的基本逻辑结构:条件结构循环结构输出输出“n不是质数不是质数”输出输出“n是质数是质数”程序框图的三种基本的逻辑结构程序框图的三种基本的逻辑结构顺序结构顺序结构条件结构条件结构循环结构循环结构1 1 顺序结构顺序结构任何一个算法各步骤之间都有明确的顺序性,在算法的程序框图中,由若干个依次执行的步骤组成的逻辑结构,称为顺序结构.这是任何一这是任何一个算法都离不开的基本结构个算法都离不开的基本结构用程序框图可以表示为:步骤n步骤n+1【例1】 已知一个三角形三条边的边长分别为a,b,c,利用海伦-秦九韶公式设计一个计算三角形面积的算法, 并画出程序框图表示.算法分析:第二步:计算p的值.第三步:由海伦-秦九韶公式求出三角形的面积S.第四步:输出S的值.第一步:输入三角形三条边的边长a,b,c已知三角形的三边长a,b,c,画出求它的面积的程序框图.开始开始输出输出S结束结束输入输入a,b,c,已知三角形三边长分别为已知三角形三边长分别为a,b,c,则三角形则三角形的面积为的面积为其中其中 这个公式被称为海伦这个公式被称为海伦秦九韶公式秦九韶公式.课堂练习课堂练习 1.已知已知x=4,y=2,先写出,先写出w=3x+4y的的值的算法,然后画出程序框图。值的算法,然后画出程序框图。2.写出一个将变量写出一个将变量x,y的值互换的一的值互换的一个算法,并画出程序框图个算法,并画出程序框图3.流程图的判断框,有一个入口和流程图的判断框,有一个入口和n个出个出 口,则口,则n的值为()的值为() (A)1 (B) 2 (C) 3 (D) 44.下列图形符号表示输入输出框的是()下列图形符号表示输入输出框的是() (A)矩形框矩形框 (B)平行四边形框平行四边形框 (C)圆角矩形框圆角矩形框 (D)菱形框菱形框5.阅读下面的流程图阅读下面的流程图, 当当输入输入y=1时,输出的时,输出的结果是结果是 _.开始开始输入输入y输出输出x结束结束2 2 条件结构条件结构 在某些问题的算法中,有些步骤只有在一定条件下才会被执行,算法的流程因条件是否成立而变化. 在算法的程序框图中,由若干个在一定条件下才会被执行的步骤组成的逻辑结构,称为条件结构,用程序框图可以表示为下面两种形式:步骤A步骤B是步骤A是否否满足条件?满足条件?否否判断框里面要有一个“?”例2:任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在.画出这个算法的程序框图.算法分析:第一步:输入3个正实数a,b,c;第二步:判断a+bc,a+cb,b+ca是否同时成立,若是,则能组成三角形;若否,则组不成三角形.程序框图:开始开始输入输入a,b,ca+bc,a+cb,b+ca是否是否同时成立同时成立?是是存在这样的存在这样的三角形三角形不存在这样的不存在这样的三角形三角形否否结束结束例3:为了加强居民的节水意识,某市制订了以下生活用水收费标准:每户每月用水未超过7m3时,每立方米收费1.0元,并加收0.2元的城市污水处理费;超过7m3的部分,每立方米收费1.5元,并加收0.4元的城市污水处理费,请你写出某户居民每月应交纳的水费y(元)与用水量x(m3)之间的函数关系,然后设计一个求该函数值的算法,并画出程序框图.解:y与x之间的函数关系为:(当0x7时)(当x7时)解:y与x之间的函数关系为:(当0x7时)(当x7时)算法分析:第一步:输入每月用水量x;第二步:判断x是否不超过7.若是,则y=1.2x;若否,则y=1.9x-4.9.第三步:输出应交纳的水费y.开始输入用水量x0 x7?是y=1.2x否y=1.9x-4.9输出y结束程序框图例例4.画程序框图画程序框图,对于输入的对于输入的x值值,输出相应的输出相应的y值值.开始开始程序框图程序框图x0?是是y=0否否0x x B. x cC. c b D. b c是是否否开始开始输入输入a,b,cx=abx输出输出x结束结束x=bx=c否否是是3. 循环结构 在一些算法中,经常会出现从某处开始,按照一定的条件反复执行某些步骤的情况, 这就是循环结构. 反复执行的步骤称为循环体.注意:循环结构不能是永无终止的“死循环”,一定要在某个条件下终止循环,这就需要条件结构来作出判断。 因此,循环结构中一定包含条件结构。满足条件?是循环体否 这个循环结构有如下特征:在执行了一次循环体后,对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环. 因此, 这种循环结构称为直到型循环结构.(1)直到型循环结构 (反复执行循环体反复执行循环体,直到条件满足直到条件满足)循环体满足条件?是是否(2)当型循环结构 除直到型循环结构外,右图表示的也是常见的循环结构,它有如下特征:在每次执行循环体前,对条件进行判断,如果条件满足,就执行循环体,否则终止循环. 因此,这种循环结构称为当型循环结构.(当条件满足时反复执行循环体当条件满足时反复执行循环体)例5:设计一个计算1+2+3+100的值的算法,并画出程序框图.算法分析:第1步:0+1=1; 第2步:1+2=3;第3步:3+3=6; 第4步:6+4=10第100步:4950+100=5050.第(i-1)步的结果+i=第i步的结果各步骤有共同的结构:为了方便有效地表示上述过程,我们引进一个累加变量S来表示每一步的计算结果,从而把第i步表示为 S=S+iS的初始值为0,i依次取1,2,100,由于i既是累加的数值又同时记录了循环的次数,所以i称为计数变量.例5:设计一个计算1+2+3+100的值的算法,并画出程序框图.算法分析:第1步:0+1=1; 第2步:1+2=3;第3步:3+3=6; 第4步:6+4=10第100步:4950+100=5050.第一步:令n=1,s=0第二步:将s+n的值重新赋值给s,n的值加1第三步:判断n100是否成立,如成立,则输出s的值,结束算法;否则返回第二步。程序框图:开始i=1S=0S=S+ii=i+1i100?是输出S结束否直到直到型循型循环结环结构构开始i=1S=0i100?是S=S+ii=i+1否输出S结束当型循环结构说明说明:一般地一般地,循环体中都有一个循环体中都有一个计数变量计数变量(i)和和累累加变量加变量(S). 计数变量计数变量用于用于记录循环次数记录循环次数,同时它的同时它的取值取值还用于判断循环是否终止还用于判断循环是否终止, 累加变量累加变量用于用于输出结果输出结果.累加变量累加变量和和计数变量计数变量一般是一般是同步执行同步执行的的,累累加一次加一次,就记数一次就记数一次.思 考 如何用自然语言表述上图中的算法?改进这一算法,表示输出1, 1+2, 1+2+3, ., 1+2+3+.+(n-1)+n(nN*)的过程.结束输出Si=0,S=0开始i = i + 1S=S + iin-1?否是输入n【例6】某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%, 设计一个程序框图,输出预计年生产总值超过300万元的最早年份.算法分析:算法分析:第一步,输入第一步,输入2005年的年生产总值。年的年生产总值。第二步,计算下一年的年生产总值。第二步,计算下一年的年生产总值。第三步,判断所得的结果是否大于第三步,判断所得的结果是否大于300.若是,若是,则输出该年的年份;否则,返回第二步则输出该年的年份;否则,返回第二步 由于“第二步”是重复操作的步骤,所以可以用循环结构来实现。我们按照“确定循环体” “初始化变量” “设定循环控制条件”的顺序来构造循环结构。(2)初始化变量:若将)初始化变量:若将2005年的年生产总值堪称计算的年的年生产总值堪称计算的起始点,则起始点,则n的初始值为的初始值为2005,a的初始值为的初始值为200.(3)设定循环控制条件:当)设定循环控制条件:当“年生产总值超过年生产总值超过300万元万元”时时终止循环,所以可通过判断终止循环,所以可通过判断“a300”是否成立来控制循环。是否成立来控制循环。(1)确定循环体:设)确定循环体:设a为某年的年生产总值,为某年的年生产总值,t为年生为年生产总值的年增长量,产总值的年增长量,n为年份,则循环体为为年份,则循环体为程序框图程序框图:开始开始n=2005a=200t=0.05an=n+1a300?是是输出输出n结束结束否否a=a+t直到型循环结构直到型循环结构程序框图程序框图开始开始n=2005a=200t=0.05aa=a+tn=n+1输出输出n结束结束是是否否a300?当型循环结构程序框图当型循环结构程序框图 若是若是,则则m为所求为所求; 探究探究:画出用二分法求方程画出用二分法求方程x2-2=0的近似根的近似根(精确精确度为度为0.005)的程序框图的程序框图.算法分析算法分析:第一步第一步:令令f(x)=x2-2. 因为因为f(1)0,所以设所以设a=1,b=2.第二步第二步:令令判断判断f(m)是否为是否为0.若否若否,则继续判断则继续判断f(a) f(m)大于大于0还是小于还是小于0.第三步第三步:若若f(a) f(m)0,则令则令a=m;否则否则,令令b=m. 第四步第四步:判断判断|a-b|0?程序框图程序框图开始开始f(x)=x2-2输入误差输入误差和初值和初值a,bf(m)=0?a=m否否b=m|a-b|0?程序框图程序框图开始开始f(x)=x2-2输入误差输入误差和初值和初值a,ba=m否否b=m|a-b|=100?否是思考:该流程图与前面的例6中求和的流程图有何不同?2 2. .如图所示的程序如图所示的程序框图,若输入的框图,若输入的n n是是100100,则输出的,则输出的S S和和T T的值是(的值是( )A A、25002500,2500 2500 B B、25502550,25502550C C、25002500,2550 2550 D D、25502550,25002500D开始开始T=T+ns=0,T=0n3,则费用为m= 5(x-3)1.2=1.2x+1.4;若x3,则费用为m5. 第三步,输出m.开始输入a1,b1,c1, a2 。b2, c2输出“x= ”; ,“y= ”;a1b2a2b10?x=(c2b1 c1b2)/(a1b2 a2b1)y=(c2b1 c1b2)/(a1b2 a2b1)结束N NY Y输出“输入数据不合题意P.20 习题习题1.1B组第组第1题题算法步骤:第一步,输入a1,b1,c1, a2,b2,c2.第二步,计算x=(c2b1 c1b2)/(a1b2 a2b1)y=(c2b1 c1b2)/(a1b2 a2b1)第三步,输出x,y开始输入50米跑成绩rr6.8n9?结束NYYNP.20习题习题1.1B组第组第2题题 算法步骤: 第一步,令计算变量n1. 第二步,输入一个成绩r,判断r与6.8的大小,若r6.8,则执行下一步;若r6.8,则输出r,并执行下一步. 第三步,令nn1. 第四步,判断计数变量n与成绩个数9的大小,若n9,则返回第二步,若n9,则结束算法.n1nn1输出r
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号