数学知识导引算法的含义_第1页
数学知识导引算法的含义_第2页
数学知识导引算法的含义_第3页
数学知识导引算法的含义_第4页
数学知识导引算法的含义_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学必求其心得,业必贵于专精学必求其心得,业必贵于专精学必求其心得,业必贵于专精5.1算法的含义案例探究有8个小球,其中7个重量相同,仅有一个较重,用天平如何称出那个重的小球.方法1:把8个小球分成四组,依次将每组放在天平上,直到某一组不平衡,就可确定重的小球,最多需称4次.方法2:(1)从8个小球中任取6个小球,将这6个小球每边3个置于天平上;(2)若天平平衡,则表明重的小球在剩余的2个小球中,只需将那两个小球放在天平上再称1次就可找到重的那个小球;(3)若天平不平衡,则从较重的一边的3个球中任取两个球称量,若平衡,则剩下的那个即为要找的小球,若不平衡,则重的那边就是要找的小球.我们做任何事情,都是在一定条件下按某种顺序执行一系列操作.解决数学问题也常常如此,这就是本节内容要研究的算法思想.自学导引一般而言,对一类问题机械的、统一的求解方法称为算法.1.算法概念的理解(1)算法是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确有效的,而且能在有限步骤之内完成.(2)算法与一般意义上具体问题的解法既有联系,又有区别,它们之间是特殊与一般的关系,也是抽象与具体的关系.算法的获得要借助一般意义上具体问题的求解方法,而任何一个具体问题都可以利用这类问题的一般算法来解决.(3)算法一方面具有具体化、程序化、机械化的特点,同时又有高度的抽象性、概括性、精确性,所以算法在解决问题中更具条理性、逻辑化特点.2.算法的五个特点(1)概括性:写出的算法必须能解决一类问题,并且能重复使用.例如:给出求解方程组的一个算法.解析:解这个方程组的步骤是:第一步:②-①×2得5y=3;③第二步:解③得y=;第三步:将y=代入①,得x=.像上例二元一次方程组的求解问题,也适用于其他二元一次方程组的求解.(2)正确性与顺序性:算法从初始步骤开始,分为若干明确的步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,而且每一步都是正确无误的,从而组成了一个有着很强逻辑性的序列.(3)有限性:算法有明确的开始和结束界限,终止时表示问题得到解答或指出问题没解,是在有限步骤内求解某一问题.(4)不唯一性:求解某一问题的算法不是唯一的,可以有不同的算法.当然这些算法有繁简之分,但是都能解决这一类问题.(5)普遍性:很多具体的问题,都可以设计合理的算法去解决,例如,手算、心算、用算盘、用计算器算都要经过有限的、事先设计好的步骤来实现.同样的一个工作计划,生产流程都可以视为算法.疑难剖析算法是数学及其应用的重要组成部分,是计算科学的重要基础.随着现代信息技术的飞速发展,算法在科学技术、社会发展中发挥着越来越大的作用,并日益融入社会生活的方方面面,算法思想已成为现代人应具备的一种数学素养.算法是高中数学课程的新增内容,其思想方法是非常重要的.【例1】试写出求解二元一次方程组的算法.思路分析:本题主要考查二元一次方程组的解的算法.不妨设二元一次方程组为对于求方程的根,解方程组这样的数值性的问题,我们都有具体的计算方法,只要我们把平时的计算方法严格地按步骤把它描述出来即可.因此我们很容易得到下面的算法.解:由于是二元一次方程组,故方程组中a11、a21不能同时为0.第一步,假定a11≠0(如果a11=0,可将第一个方程与第二个方程互换),①×(-)+②得到(a22-)x2=b2-.即方程组可化为第二步,如果a11a22—a21ax2=⑤第三步,将⑤代入③,整理得到x1=⑥第四步,输出结果x1、x2.如果a11a22-a21a嗣位启示:从本例可以发现,求解某个问题的算法不同于求解一个具体问题的方法,算法必须能够解决一类问题.并且能够重复使用;算法过程要能一步一步地执行,每一步操作必须确切,能在有限步后得出结果.变式训练:1.试写出求一元二次方程ax2+bx+c=0的根的算法.解:第一步:计算Δ=b2-4ac;第二步:如果Δ<0.则原方程无实数解,否则(Δ≥0)第三步:输出x1,x2或无实数解的信息.2.试写出求x2—5x—6>0的解的算法.解:第一步:求对应方程x2-5x-6=0的两根x1=—1,x2=6.第二步:写出解集{x|x>6或x<-1}.【例2】写出求1+2+3+4+5+6的一个算法.思路分析1:按照逐一相加的程序进行.解法1:第一步:计算1+2,得3;第二步:将第一步中的运算结果3与3相加得6;第三步:将第二步中的运算结果6与4相加得10;第四步:将第三步中的运算结果10与5相加得15;第五步:将第四步中的运算结果15与6相加得21.思路分析2:可以运用公式1+2+3+…+n=;直接计算.解法2:第一步:取n=6;第二步:计算;第三步:输出运算结果.思维启示:题目尽管简单,还是要一步一步地做.否则就不能利用上述算法解决这一类问题.变式训练:写出求1×2×3×4×5×6的值的算法.解:第一步:计算1×2,得2;第二步:将第一步中的运算结果2与3相乘得6;第三步:将第二步中的运算结果6与4相乘得24;第四步:将第三步中的运算结果24与5相乘得120;第五步:将第四步中的运算结果120与6相乘得720.【例3】已知球的半径R=5,写出求球的体积V的一个算法.思路分析:算法具有普遍性,过去学过的许多公式的应用都是算法,描述算法时只要将问题的解答分为明确的步骤即可.解:第一步:输入球的半径R=5;第二步:用球的体积公式V=πR3,计算V的值;第三步:输出V.思维启示:平时我们解题的一般步骤只注重第二步,其他步骤往往忽略了,算法却讲究“一步一步地去做".像这类套用现成公式求值的题一般分为三步:“第一步输入需要的值,第二步套用公式,第三步输出结果.”【例4】写出一个求解任意二次函数y=ax2+bx+c(a≠0)的最值的算法.思路分析:由二次函数的知识得,当a〉0时,函数有最小值;当a<0时,函数有最大值.解:算法步骤如下:第一步:输入a、b、c;第二步:计算m=第三步:若a〉0,输出最小值m;第四步:若a〈0,输出最大值m.变式训练:写出求点M(1,2)到直线3x+5y—6=0的距离的算法.解:第一步:输入点M的坐标x0=1,y0=2及直线方程的系数A=3,B=5,C=-6;第二步:计算P=Ax0+By0+C;第三步:计算Q=A2+B2;第四步:计算d=;第五步:输出D.【例5】一列快车长168米,一列慢车长184米.如果两车相向而行,从相遇到离开需4秒,如果同向而行,从快车追及慢车到离开需16秒钟,求两车的速度.思路分析:本题是一个实际的数值问题,对于这样的问题一定要建立它的数学模型;按照数学的处理方案一步一步地具体化,两车相向而行,则其相对速度为速度之和,两车同向而行,则其相对速度为速度之差,相对移动的距离均为两辆火车的长度之和.第一步:设快车时速为x公里/小时,慢车时速为y公里/小时,可以得到如下方程组:第二步:将其化简得第三步:将①+②得x=55;③第四步:将③代入①或②得y=33.思维启示:本题的关键是将具体的问题转化为数学模型,只要掌握了这个过程,则对于描述本题的算法就是解方程组的步骤了.【例6】现有有限个正整数,试设计一个求这些有限个正整数中最大数的算法.思路分析:如果让我们从10个、8个正整数中找出最大数,也许是一件很简单的事,我们一眼就能看出结果.但如果给我们100个、1000个,甚至更多的数,那么找出其中最大的数就是一件很困难的事了.我们必须依靠算法来解决这个问题.我们可以设想有一个基础数(如第一个数),让它作为其中的最大数,然后将第二个数与这个基础数比较,将这两者中的较大者再作为基础数与第三个数进行比较,找出其中的较大者,将其作为基础数再与第四个数比较,依次下去,直到与最后一个数比较完毕,就能确定出有限个正整数中的最大数.解:算法步骤用自然语言叙述如下:第一步:先假定这些正整数中的第一个数为“最大值”;第二步:将这些整数中下一个数与“最大值”比较,如果它大于此“最大值”,这时就假定“最大值"是这个整数;第三步:如果还有其他正整数,重复第二步;第四步:一直到没有可比的数为止,这时假定的“最大值”就是这有限个正整数中的最大值.思维启示:一种算法,就是要求我们去按部就班地做,每做一步都有唯一的结果,并且对任意的有限个正整数都适用,且在有限步之后,总能得出结果.拓展迁移【拓展点1】写出求1×2×3×…×9×10的值的算法.解法1:可用最原始的方法进行计算.第一步,先求1×2,得到结果2;第二步,将第一步所得结果2再乘以3,得到结果6;第三步,将6再乘以4,得到24;第四步,将24再乘以5,得到120;……第九步,将362880再乘以10,得到3628800,即是最后结果.虽然这样的算法是正确的,但过于繁琐.如果要求1×2×…×10000的值,则要写9999个步骤,显然是不可取的,而且每次都直接使用上一步的数值结果(如2,6,24等)也不方便,应当找到一种通用的方法.通过分析可发现规律,乘数是前一个加1.利用这一规律,可以得到第二种算法.解法2:可以设两个变量,一个代表被乘数,一个代表乘数,不另设变量存放乘积结果,而直接将每一步的乘积放在被乘数变量中.现在设p为被乘数,i为乘数.用循环算法来求结果,可将算法改写如下.第一步:使p=1.第二步:使i=2.第三步:使p=p×i(乘积仍放在变量p中).第四步:使i=i+1(使i的值加1).第五步:如果i≤10,则返回重新执行步骤第三步,以及其后的步骤第四步和第五步,否则算法结束.【拓展点2】试写出求1+2+3+4+5+…+n的算法.思路分析:如果仅仅几个数相加.我们可以一个一个地相加.其实那也是一种算法.从例题2可以看出,我们每一步都是在重复运算,不同的是运算的数值不一样.但是运算的数值是有规律的.因此可以引进两个变量,一个是sum代表和,一个是i,先设sum=0,i=1,i的值在变化,sum的值变化.解:第一步:设i的值为1;第二步:设sum的值为0;第三步:如果i≤n执行第四步,否则转去执行

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论