登录 / 注册
首页>人教版高中数学必修3>1.3.2秦九韶算法

高中数学必修3优质课《1.3.2秦九韶算法》ppt课件免费下载

以下为幻灯片页面截图,请点击左边“我要下载”按钮免费下载无水印完整文件
高中数学必修3优质课《1.3.2秦九韶算法》ppt课件免费下载
学习目标:
1、了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质。
2、模仿秦九韶计算方法,体会古人计算构思的巧妙。
算法案例二-----秦九韶算法
1、求两个数的最大公约数的两种方法分别是( )和( )。
2、两个数21672,8127的最大公约数是( )
A、2709 B、2606 C、2703 D、2706
知识回顾
[问题1]设计求多项式f(x)=2x5-5x4-4x3+3x2-6x+7当x=5时的值的算法,并写出程序.
点评:上述算法一共做了15次乘法运算,5次加法运算.优点是简单,易懂;缺点是不通用,不能解决任意多项多求值问题,而且计算效率不高.
知识探究
阅读教材37页—39页内容,解决下列问题:
这析计算上述多项式的值,一共需要9次乘法运算,5次加法运算.
[问题2]有没有更高效的算法?
分析:计算x的幂时,可以利用前面的计算结果,以减少计算量,
即先计算x2,然后依次计算
的值.
第二种做法与第一种做法相比,乘法的运算次数减少了,因而能提高运算效率.而且对于计算机来说,做一次乘法所需的运算时间比做一次加法要长得多,因此第二种做法能更快地得到结果.
[问题3]能否探索更好的算法,来解决任意多项式的求值问题?
f(x)=2x5-5x4-4x3+3x2-6x+7
=(2x4-5x3-4x2+3x-6)x+7
=((2x3-5x2-4x+3)x-6)x+7
=(((2x2-5x-4)x+3)x-6)x+7
=((((2x-5)x-4)x+3)x-6)x+7
v0=2
v1=v0x-5=2×5-5=5
v2=v1x-4=5×5-4=21
v3=v2x+3=21×5+3=108
v4=v3x-6=108×5-6=534
v5=v4x+7=534×5+7=2677
所以,当x=5时,多项式的值是2677.
这种求多项式值的方法就叫秦九韶算法.
例1:用秦九韶算法求多项式 f(x)=2x5-5x4-4x3+3x2-6x+7当x=5时的值.
解法一:首先将原多项式改写成如下形式 : f(x)=((((2x-5)x-4)x+3)x-6)x+7
v0=2 v1=v0x-5=2×5-5=5
v2=v1x-4=5×5-4=21
v3=v2x+3=21×5+3=108
v4=v3x-6=108×5-6=534
v5=v4x+7=534×5+7=2677
所以,当x=5时,多项式的值是2677.
然后由内向外逐层计算一次多项式的值,即
2 -5 -4 3 -6 7
x=5
10
5
25
21
105
108
540
534
2670
2677
所以,当x=5时,多项式的值是2677.
原多项式的系数
多项式的值.
例1:用秦九韶算法求多项式 f(x)=2x5-5x4-4x3+3x2-6x+7当x=5时的值.
解法二:列表
2
2 -5 0 -4 3 -6 0
x=5
10
5
25
25
125
121
605
608
3040
3034
所以,当x=5时,多项式的值是15170.
练一练:用秦九韶算法求多项式 f(x)=2x6-5x5-4x3+3x2-6x当x=5时的值.
解:原多项式先化为:
f(x)=2x6-5x5 +0×x4-4x3+3x2-6x+0
列表
2
15170
15170
注意:n次多项式有n+1项,因此缺少哪一项应将其系数补0.
f(x)=anxn+an-1xn-1+an-2xn-2+……+a1x+a0.
我们可以改写成如下形式:
f(x)=(…(anx+an-1)x+an-2)x+…+a1)x+a0.
求多项式的值时,首先计算最内层括号内一次多项式的值,即
v1=anx+an-1,
然后由内向外逐层计算一次多项式的值,即
一般地,对于一个n次多项式
v2=v1x+an-2,
v3=v2x+an-3, ……,
vn=vn-1x+a0.
这样,求n次多项式f(x)的值就转化为求n个一次多项式的值.这种算法称为秦九韶算法.
点评:秦九韶算法是求一元多项式的值的一种方法.
它的特点是:把求一个n次多项式的值转化为求n个一次多项式的值,通过这种转化,把运算的次数由至多n(n+1)/2次乘法运算和n次加法运算,减少为n次乘法运算和n次加法运算,大大提高了运算效率.
v1=anx+an-1,
v2=v1x+an-2,
v3=v2x+an-3, ……,
vn=vn-1x+a0.
观察上述秦九韶算法中的n个一次式,可见vk的计算要用到vk-1的值.
若令v0=an,得
这是一个在秦九韶算法中反复执行的步骤,因此可用循环结构来实现.
[问题]画出程序框图,表示用秦九韶算法求5次多项式f(x)=a5x5+a4x4+a3x3+a2x2+a1x+a0当x=x0 (x0是任意实数)时的值的过程,然后写出程序.

程序框图
开始
输入a0,a1,a2,a3,a4,a5
输入x0
n≤5?
n=1
v=a5
v=vx0+a5-n
n=n+1
输出v
结束

达标检测
1.已知f(x)=x5-4x4+2x2-5x+1,求f(3)的值.
f(3)=-77
2.用秦九韶算法计算多项式
f(x)=3x6+4x5+5x4+6x3+7x2+8x+1当x=0.4时的值时,需要
做乘法和加法的次数分别是( )
A.6,6 B.5,6 C.5,5 D.6,5
A
3.用秦九韶算法求多项式f(x)=x4-2x3+3x2-7x-5当x=4时的
值,给出如下数据:①0 ②2 ③11 ④37 ⑤143 其运算过
程中(包括最终结果)会出现的数有__________(只填序号).
②③④⑤
5.利用秦九韶算法计算函数f(x)=x+2x2+3x3+4x4+5x5
的值时,需要做加法、乘法的次数分别为_____、_____.
4
5
4.用秦九韶算法求多项式f(x)=8x7+5x6+3x4+2x+1当x=2
时的值.
1397
课堂小结:
1、秦九韶算法的方法和步骤
2、秦九韶算法的程序框图
作业:
P48 A组 2 预习 进位制