1、1、1算法的概念学案(已修改)

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

教学,重要的不是教师的“教”,而是学生的“学”heda2007@163.com新课标人教A版高一数学讲义编写者:孟凡洲QQ:19174531311、1、1算法的概念讲义编写者:数学教师孟凡洲一、【学习目标】1、正确理解算法的概念,掌握算法的基本特点;2、会写出解二元一次方程组、判断一个数为质数和二分法求近似解的算法;3、把自然语言转化为算法语言.二、【自学内容和要求及自学过程】1、阅读教材第2页内容,回答问题(解二元一次方程组的步骤)1我们知道解二元一次方程组的方法有代入消元法和加减消元法,请你结合教材的例子112212{yxyx总结用加减消元法和代入消元法解二元一次方程组的步骤.2请同学们总结解一般二元一次方程组12111222{cybxacybxa的步骤.结论:1①加减消元法解二元一次方程组:回顾二元一次方程组112212{yxyx的求解过程,我们可以归纳出以下步骤:第一步,1+2×2,得5x=13.第二步,解3,得:x=1/5,第三步,2-1×2得5y=34.第四步,解4,得y=3/5.第五步:得到方程组的解为5/15/3{xy2代入消元法解二元一次方程组112212{yxyx我们可以归纳出以下步骤:第一步,由1得x=2y-13.第二步,把3代入2,得2(2y-1)+y=14.第三步,解4得y=3/55.第四步,把5代入3,得x=2×3/5-1=1/5.第五步,得到方程组的解为:5/15/3{xy2对于一般的一元二次方程组12111222{cybxacybxa,其中01221baba,可以写出类似的求解步骤:第一步,1×2b-2×1b,得21121221)(cbcbxbaba3.第二步,解3,得)/()(12212112babacbcbx.第三步,2×1a-1×2a,得12211221)(cacaybaba4.第四步,解4,得)/()(12211221babacacay.第五步,得到方程组的解为1221211212211221)/()()/()({babacbcbxbabacacay上述步骤构成了解二元一次方程组的一个算法,我们可以根据这一算法编制计算机程序,让计算机来解二元一次方程组.2、根据第一块内容,结合算法的定义,回答问题(算法)3根据上述实例,说说你对算法的理解.4请同学们总结算法的特征.结论:3广义的算法是指完成某项工作的方法和步骤,那么我们可以说洗衣机的使用说明书是操作洗衣机的算法,菜谱是做菜的算法等等.在数学中,算法通常是指按照一定规则解决某一类问题的明确和有限点的步骤.教学,重要的不是教师的“教”,而是学生的“学”heda2007@163.com新课标人教A版高一数学讲义编写者:孟凡洲QQ:1917453132现在算法通常可以编成计算机程序,让计算机执行并解决问题.4①确定性:算法的每一部都应当做到准确无误、不重复、不遗漏.不重复是指不是可有可无的,甚至无用的步骤,不遗漏是指缺少哪一步都无法完成任务.②逻辑性:算法从开始的第一步直到最后一步之间做到环环相扣,分工明确,前一步是后一步的前提,后一步是前一步的继续.③有穷性:算法要有明确的开始和结束,当到达终止步骤时所要解决的问题有明确的结果,也就是说必须在有限步骤内完成任务,不能无限制的持续进行.思考:我们为什么要学习算法?结论:在解决某些问题时,需要设计出一系列可操作或可计算的步骤来解决问题,这些步骤称为解决这些问题的算法.也就是说算法实际上就是解决问题的一种程序性方法.算法一般是机械的,它的优点是一种通法,只要按部就班的去做,总能得到结果.因此算法是计算科学的基础.三、【综合练习与思考探索】练习一:教材例1:1设计一个算法,判断7是否为质数.2设计一个算法,判断35是否为质数.结论:1根据质数的定义,可以这样判断:依次用2—6除7,如果它们中有一个能整除7,则7不是质数,否则7是质数.根据以上分析,可写出如下的算法:第一步:用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不是质数.引申:教材P4探究:请写出判断整数n(n2)是否为质数的算法.教学,重要的不是教师的“教”,而是学生的“学”heda2007@163.com新课标人教A版高一数学讲义编写者:孟凡洲QQ:1917453133对于任意的整数n(n2),若用i表示2—(n-1)中的任意整数,则判断整数n(n2)是否为质数的算法包含下面的重复操作.用i除n,得到余数r,判断余数r是否为0,若是,则n不是质数;否则,将i的值增加1.再执行同样的操作.这个操作一直要进行到i的值等于(n-1)为止.因此,判断整数n(n2)是否为质数的算法可以写成:第一步,给定大于2的整数n.第二步,令i=2.第三步,用i除n,得到余数r.第四步,判断“r=0”是否成立.若是,则n不是质数,结束算法;否则,将i的值增加1,仍用i表示.第五步,判断“i(n-1)”是否成立.若是,则n是质数,结束算法;否则,返回第三步.练习二:教材例2:写出用“二分法”求方程x2-2=0(x0)的近似解的算法.结论:算法分析:令f(x)=x2-2=0(x0),则方程x2-2=0的解就是函数f(x)的零点.二分法的基本思想是:把函数f(x)的零点所在的区间[a,b](满足f(a)f(b)0)一分为二,得到[a,m]和[m,b].根据f(a)f(m)0是否成立,取出零点所在的区间[a,m]或[m,b],仍记为[a,b].对所得的区间[a,b],重复上述步骤,直到包含零点的区间[a,b]足够小,则[a,b]内的数可以作为方程的近似解.根据以上分析,可以写出如下的算法:第一步,令f(x)=x2-2=0,给出精确度d.第二步,确定区间[a,b],满足f(a)f(b)0.第三步,取区间中点m=(a+b)/2.第四步,若f(a)f(m)0,则含零点的区间为[a,m];否则,含零点的区间为[m,b].将新得到的含零点的区间仍记为[a,b].第五步,判断[a,b]的长度是否小于d或f(m)是否等于0.若是,则m是方程的近似解;否教学,重要的不是教师的“教”,而是学生的“学”heda2007@163.com新课标人教A版高一数学讲义编写者:孟凡洲QQ:1917453134则,返回第三步.当d=0.005时,按照以上算法,可以得到表1—1和图1.1—1于是,开区间(1.4140625,1.41796875)中的实数都是当精确度为0.005时的原方程的近似解.练习三:写出一个求有限整数列中的最大值的算法.结论:算法如下.S1先假定序列中的第一个整数为“最大值”.S2将序列中的下一个整数值与“最大值”比较,如果它大于此“最大值”,这时你就假定“最大值”是这个整数.S3如果序列中还有其他整数,重复S2.S4在序列中一直到没有可比的数为止,这时假定的“最大值”就是这个序列中的最大值.引申:写出对任意3个整数a,b,c求出最大值的算法.S1max=aS2如果bmax,则max=b.S3如果Cmax,则max=c.S4max就是a,b,c中的最大值练习四:写出求1+2+3+4+5+6的一个算法.可以按逐一相加的程序进行,也可以利用公式1+2+…+n=2)1(nn进行,也可以根据加法运算律简化运算过程.算法1:S1:计算1+2得到3;S2:将第一步中的运算结果3与3相加得到6;S3:将第二步中的运算结果6与4相加得到10;S4:将第三步中的运算结果10与5相加得到15;S5:将第四步中的运算结果15与6相加得到21.算法2:教学,重要的不是教师的“教”,而是学生的“学”heda2007@163.com新课标人教A版高一数学讲义编写者:孟凡洲QQ:1917453135S1:取n=6;S2:计算2)1(nn;S3:输出运算结果.算法3:S1:将原式变形为(1+6)+(2+5)+(3+4)=3×7;S2:计算3×7;S3:输出运算结果.小结:算法1是最原始的方法,最为繁琐,步骤较多,当加数较大时,比如1+2+3+…+10000,再用这种方法是行不通的;算法2与算法3都是比较简单的算法,但比较而言,算法2最为简单,且易于在计算机上执行操作.引申:求1×3×5×7×9×11的值,写出其算法.算法1;第一步,先求1×3,得到结果3;第二步,将第一步所得结果3再乘以5,得到结果15;第三步,再将15乘以7,得到结果105;第四步,再将105乘以9,得到945;第五步,再将945乘以11,得到10395,即是最后结果.算法2:用P表示被乘数,i表示乘数.S1使P=1.S2使i=3S3使P=P×iS4使i=i+2S5若i≤11,则返回到S3继续执行;否则算法结束.小结由于计算机动是高速计算的自动机器,实现循环的语句.因此,上述算法2不仅是正确的,而且是在计算机上能够实现的较好的算法.在上面的算法中,S3,S4,S5构成一个完整的循环,这里需要说明的是,每经教学,重要的不是教师的“教”,而是学生的“学”heda2007@163.com新课标人教A版高一数学讲义编写者:孟凡洲QQ:1917453136过一次循环之后,变量P、i的值都发生了变化,并且生循环一次之后都要在步骤S5对i的值进行检验,一旦发现i的值大于11时,立即停止循环,同时输出最后一个P的值,对于循环结构的详细情况,我们将在以后的学习中介绍.四、【作业】1、必做题:教材第5页练习1、2;2、选做题:写出通过尺规作图确定线段AB一个五等分点的算法.五、【课后练习】1、同学要在下午到体育馆参加比赛,比赛下午2时开始,请写出该同学从家里发到比赛地的算法.2、写出解一元二次方程ax2+bx+c=0(a≠0)的一个算法.3、写出求1至1000的正数中的3倍数的一个算法(打印结果)4、写出解不等式x2-2x-30的一个算法.解:第一步:x2-2x-3=0的两根是x1=3,x2=-1.第二步:由x2-2x-30可知不等式的解集为{x|-1x3}.评注:该题的解法具有一般性,下面给出形如ax2+bx+c0的不等式的解的步骤(为方便,我们设a0)如下:第一步:计算△=acb42;第二步:若△0,示出方程两根aacbbx2422,1(设x1x2),则不等式解集为{x|xx1或xx2};第三步:若△=0,则不等式解集为{x|x∈R且xab2};第四步:若△0,则不等式的解集为R.5、求过P(a1,b1)、Q(a2,b2)两点的直线斜率有如下的算法:第一步:取x1=a1,y1=b1,x2=a2,y1=b2;第二步:若x1=x2;第三步:输出斜率不存在;教学,重要的不是教师的“教”,而是学生的“学”heda2007@163.com新课标人教A版高一数学讲义编写者:孟凡洲QQ:1917453137第四步:若x1≠x2;第五步:计算1212xxyyk;第六步:输出结果.6、写出求过两点M(-2,-1)、N(2,3)的直线与坐标轴围成面积的一个算法.第一步:取x1=-2,y1=-1,x2=2,y2=3;第二步:

1 / 7
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功