1、算法的概念教学目标: (1)了解算法的含义,体会算法的思想。(2)能够用自然语言叙述算法。(3)把握正确的算法应满足的要求。(4)会写出解线性方程(组)的算法。(5)会写出一个求有限整数序列中的最大值的算法。教学重点: 算法的含义、解二元一次方程组和推断一个数为质数的算法设计。.教学难点: 把自然语言转化为算法语言。.学法:1、写出的算法,必需能解决一类问题(如:推断一个整数n(n1)是否为质数;求任意一个方程的近似解;),并且能够重复使用。2、要使算法尽量简洁、步骤尽量少。3、要保证算法正确,且计算机能够执行,如:让计算机计算12345是可以做到的,但让计算机去执行“倒一杯水”“替我理发”等
2、则是做不到的。教学过程一、章头图体现了中国古代数学与现代计算机科学的联系,它们的基础都是“算法”。算法作为一个名词,在中学教科书中并没有毁灭过,我们在基础训练阶段还没有接触算法概念。但是我们却从学校就开头接触算法,生疏很多问题的算法。如,做四则运算要先乘除后加减,从里往外脱括弧,竖式笔算等都是算法,至于乘法口诀、珠算口诀更是算法的具体体现。广义地说,算法就是做某一件事的步骤或程序。菜谱是做菜肴的算法,洗衣机的使用说明书是操作洗衣机的算法,歌谱是一首歌曲的算法。在数学中,主要争辩计算机能实现的算法,即依据某种机械程序步骤确定可以得到结果的解决问题的程序。(古代的计算工具:算筹与算盘. 20世纪最
3、宏大的制造:计算机,计算机是强大的实现各种算法的工具。)例1:解二元一次方程组: 分析:解二元一次方程组的主要思想是消元的思想,有代入消元和加减消元两种消元的方法,下面用加减消元法写出它的求解过程.解:第一步: - 2,得: 5y=3; 其次步:解得 ; 第三步:将代入,得 .同学探究:对于一般的二元一次方程组来说,上述步骤应当怎样进一步完善?老师评析:本题的算法是由加减消元法求解的,这个算法也适合一般的二元一次方程组的解法。下面写出求方程组的解的算法:例2:写出求方程组的解的算法. 解:第一步: a1 - a2,得: 其次步:解得 ;第三步:将代入,得算法概念:在数学上,现代意义上的“算法”
4、通常是指可以用计算机来解决的某一类问题是程序或步骤,这些程序或步骤必需是明确和有效的,而且能够在有限步之内完成.2. 算法的特点:(1)有限性:一个算法的步骤序列是有限的,必需在有限操作之后停止,不能是无限的.(2)确定性:算法中的每一步应当是确定的并且能有效地执行且得到确定的结果,而不应当是模棱两可.(3)挨次性与正确性:算法从初始步骤开头,分为若干明确的步骤,每一个步骤只能有一个确定的后继步骤,前一步是后一步的前提,只有执行完前一步才能进行下一步,并且每一步都精确无误,才能完成问题.(4)不唯一性:求解某一个问题的解法不愿定是唯一的,对于一个问题可以有不同的算法.(5)普遍性:很多具体的问
5、题,都可以设计合理的算法去解决,如心算、计算器计算都要经过有限、事先设计好的步骤加以解决.例题讲评:例3、任意给定一个大于1的整数n,试设计一个程序或步骤对n是否为质数做出推断.分析:(1)质数是只能被1和自身整除的大于1的整数.(2)要推断一个大于1的整数n是否为质数,只要依据质数的定义,用比这个整数小的数去除n,假如它只能被1和本身整除,而不能被其它整数整除,则这个数便是质数.解:算法:第一步:推断n是否等于2.若n=2,则n是质数;若n2,则执行其次步.其次步:依次从2(n-1)检验是不是n的因数,即整除n的数.若有这样的数,则n不是质数;若没有这样的数,则n是质数.说明:本算法是用自然
6、语言的形式描述的.设计算法确定要做到以下要求:(1)写出的算法必需能解决一类问题,并且能够重复使用.(2)要使算法尽量简洁、步骤尽量少.(3)要保证算法正确,且计算机能够执行.利用TI-voyage200图形计算器演示:(同学已经被吸引住了)例4、.用二分法设计一个求方程的近似根的算法.分析:该算法实质是求的近似值的一个最基本的方法.解:设所求近似根与精确解的差的确定值不超过0.005,算法:第一步:令.由于,所以设x1=1,x2=2.其次步:令,推断f(m)是否为0.若是,则m为所求;若否,则连续推断大于0还是小于0.第三步:若,则x1=m;否则,令x2=m.第四步:推断是否成立?若是,则x
7、1、x2之间的任意值均为满足条件的近似根;若否,则返回其次步.练习1:写出解方程x22x30的一个算法。练习2、求1357911的值,写出其算法。练习3、有蓝和黑两个墨水瓶,但现在却错把蓝墨水装在了黑墨水瓶中,黑墨水错装在了蓝墨水瓶中,要求将其互换,请你设计算法解决这一问题。小结1、算法概念和算法的基本思想(1)算法与一般意义上具体问题的解法的联系与区分;(2)算法的五个特征。2、利用算法的思想和方法解决实际问题,能写出一此简洁问题的算法3、两类算法问题(1)数值性计算问题,如:解方程(或方程组),解不等式(或不等式组),套用公式推断性的问题,累加,累乘等一类问题的算法描述,可通过相应的数学模型借助一般数学计算方法,分解成清楚的步骤,使之条理化即可。(2)非数值性计算问题,如:排序、查找、变量变换、文字处理等需先建立过程模型,通过模型进行算法设计与描述。作业: