1、算算 法法 案案 例例-秦九韶算法ks5u精品课件ks5u精品课件秦九韶(秦九韶(1208年年1261年)南宋官员、年)南宋官员、数学家,与李冶、杨辉、朱世杰并称宋数学家,与李冶、杨辉、朱世杰并称宋元数学四大家。字道古,汉族,自称鲁元数学四大家。字道古,汉族,自称鲁郡(今山东曲阜)人,生于普州安岳郡(今山东曲阜)人,生于普州安岳(今属四川)。精研星象、音律、算术、(今属四川)。精研星象、音律、算术、诗词、弓剑、营造之学,历任琼州知府、诗词、弓剑、营造之学,历任琼州知府、司农丞,后遭贬,卒于梅州任所,著作司农丞,后遭贬,卒于梅州任所,著作数书九章,其中的大衍求一术、三数书九章,其中的大衍求一术、
2、三斜求积术和秦九韶算法是含有世界意义斜求积术和秦九韶算法是含有世界意义的重要奉献。的重要奉献。ks5u精品课件 在数学的发展史上,从公元前在数学的发展史上,从公元前2、3世世纪公元纪公元14世纪,中国的数学虽有过高潮,世纪,中国的数学虽有过高潮,也有过低落,但始终走在世界的前列,是也有过低落,但始终走在世界的前列,是世界数学的中心。中国古代数学对世界数世界数学的中心。中国古代数学对世界数学发展有着不可磨灭的奉献。秦九韶算法学发展有着不可磨灭的奉献。秦九韶算法就是中国古代数学的一枝奇葩。就是中国古代数学的一枝奇葩。今天这节课我们领略秦九韶算法的魅力。今天这节课我们领略秦九韶算法的魅力。ks5u精
3、品课件(1)设计求多求多项式式当当x=5时的的值的算法,并写出程序。的算法,并写出程序。(2)有无更高效的算法?能否探求更加好的)有无更高效的算法?能否探求更加好的算法,来解决任意多算法,来解决任意多项式的求解式的求解问题?ks5u精品课件T引引导学生把多学生把多项式式变形形为:思考:从内到外,如果把每一种括号都当思考:从内到外,如果把每一种括号都当作一种常数,那么作一种常数,那么变形后的式子中有哪些形后的式子中有哪些“一次式一次式”?x的系数依次是什么?的系数依次是什么?ks5u精品课件(3)若将)若将x的值代入变形后的式子中,那的值代入变形后的式子中,那么求值的计算过程是如何的?么求值的计
4、算过程是如何的?将变形前x的系数乘以x的值,加上变形前的第2个系数,得到一种新的系数;将此系数继续乘以x的值,再加上变形前的第3个系数,又得到一种新的系数;继续对新系数做上面的变换,直到与变形前的最后一种系数相加,得到一种新的系数为止。这个系数即为所求多项式的值。这种算法即是“秦九韶算法”ks5u精品课件(4)用秦九韶算法求多项式的值,)用秦九韶算法求多项式的值,与多项式构成有直接关系吗?用秦九与多项式构成有直接关系吗?用秦九韶算法计算上述多项式的值,需要多韶算法计算上述多项式的值,需要多少次乘法运算和多少次加法运算?少次乘法运算和多少次加法运算?计算只与多项式的系数有关,ks5u精品课件数书
5、九章数书九章秦九韶算法秦九韶算法设设是一个是一个n 次的多项式次的多项式对该多项式按下面的方式进行改写:对该多项式按下面的方式进行改写:这是如何的一种改写方式?最后的成果是什么?ks5u精品课件规定多项式的值,应当先算最内层的一次多项式的值,即规定多项式的值,应当先算最内层的一次多项式的值,即然后,由内到外逐级计算一次多项式的值,即然后,由内到外逐级计算一次多项式的值,即最后的一最后的一项是什么项是什么?这种将求一种这种将求一种n次多项式次多项式f(x)的值转化成求的值转化成求n个一个一次多项式的值的方法,称为秦九韶算法。次多项式的值的方法,称为秦九韶算法。ks5u精品课件 通过一次式的重复计
6、算,逐步得出高次多通过一次式的重复计算,逐步得出高次多项式的值,对于一种项式的值,对于一种n次多项式,只需做次多项式,只需做n次乘次乘法和法和n次加法即可。次加法即可。秦九韶算法的特点:秦九韶算法的特点:ks5u精品课件算法环节:算法环节:第一步:输入多项式次数第一步:输入多项式次数n、最高次项的系数、最高次项的系数an和和x的值的值.第二步:将第二步:将v的值初始化为的值初始化为an,将,将i的值初始化为的值初始化为n-1.第三步:输入第三步:输入i次项的系数次项的系数ai.第四步:第四步:v=vx+ai,i=i-1.第五步:判断第五步:判断i与否不不不大于或等于与否不不不大于或等于0,若是
7、,则,若是,则返回第三步;否则,输出多项式的值返回第三步;否则,输出多项式的值v。ks5u精品课件程序框图:程序框图:这是一种在秦九韶算法中这是一种在秦九韶算法中重复执行的环节,因此可重复执行的环节,因此可用循环构造来实现。用循环构造来实现。输入输入ai开始开始输入输入n,an,xi=0?输出输出v结束结束v=vx+aii=i-1YNi=n-1V=anks5u精品课件(3)程序:)程序:INPUT “n=”;nINPUT“an=“;aINPUT“x=“;xv=ai=n-1WHILE i=0 PRINT“i=“;i INPUT“ai=“;a v=v*x+a i=i-1WENDPRINT vENDks5u精品课件小结:小结:(1)算法含有通用的特点,能够解决一类问题;)算法含有通用的特点,能够解决一类问题;(2)解决同一类问题,能够有不同的算法,)解决同一类问题,能够有不同的算法,但计算的效率是不同的,应选择高效的算法但计算的效率是不同的,应选择高效的算法(3)算法的种类虽多,但三种逻辑构造能够有效)算法的种类虽多,但三种逻辑构造能够有效 的体现多个算法等。的体现多个算法等。ks5u精品课件