人教课标版高中数学必修3《算法案例:秦九韶算法》教学课件
合集下载
新课标人教版高中数学必修三第一章 第三节《算法案例》第二课时秦九韶算法与进位制(共33张ppt)

所以 v0=8, v1=8×2+5=21,
v2=21×2+0=42, v3=42×2+3=87, v4=87×2+0=174, v5=174×2+0=348, v6=348×2+2=698, v7=698×2+1=1 397.
所以当 x=2 时,f(x)=1 397. 同理可求当 x=-1 时,f(x)=-1, 又因为 f(-1)f(2)=-1 397<0, 则 f(x)在区间[-1,2]上有零点.
v0 1
v1 v0x 1 1 5 1 6
v2 v1x 1 6 5 1 31
v3 v2x 1 31 5 1 156 所以当x=5时, v4 v3x 1 156 5 1 781 多项式的值 v5 v4x 1 781 5 1 3906 为3906
a=rnrn-1…r1r0(2)
十进制化k进制的算法 思考1:根据上面的分析,将十进制数a化为二进制数的算 法步骤如何设计?
第一步,输入十进制数a的值.
第二步,求出a除以2所得的商q,余数r.
第三步,把所得的余数依次从右到左排列.
第四步,若q≠0,则a=q,返回第二步; 否则,输出全部余数r排列得到的二进制数.
求多项式 f (x) = 1+ 2x + 3x2 + 4x 3 + 5x 4 在x=a时的值.
3
例 3:利用秦九韶算法分别计算 f(x)=8x7+5x6+3x4+2x+1 在 x=2 与 x=-1 时的值,并判断 f(x)在区间[-1,2]上有没有零
点.
【解】 因为 f(x)=8x7+5x6+3x4+2x+1 =((((((8x+5)x+0)x+3)x+0)x+0)x+2)x+1, 且 x=2,
开始
v2=21×2+0=42, v3=42×2+3=87, v4=87×2+0=174, v5=174×2+0=348, v6=348×2+2=698, v7=698×2+1=1 397.
所以当 x=2 时,f(x)=1 397. 同理可求当 x=-1 时,f(x)=-1, 又因为 f(-1)f(2)=-1 397<0, 则 f(x)在区间[-1,2]上有零点.
v0 1
v1 v0x 1 1 5 1 6
v2 v1x 1 6 5 1 31
v3 v2x 1 31 5 1 156 所以当x=5时, v4 v3x 1 156 5 1 781 多项式的值 v5 v4x 1 781 5 1 3906 为3906
a=rnrn-1…r1r0(2)
十进制化k进制的算法 思考1:根据上面的分析,将十进制数a化为二进制数的算 法步骤如何设计?
第一步,输入十进制数a的值.
第二步,求出a除以2所得的商q,余数r.
第三步,把所得的余数依次从右到左排列.
第四步,若q≠0,则a=q,返回第二步; 否则,输出全部余数r排列得到的二进制数.
求多项式 f (x) = 1+ 2x + 3x2 + 4x 3 + 5x 4 在x=a时的值.
3
例 3:利用秦九韶算法分别计算 f(x)=8x7+5x6+3x4+2x+1 在 x=2 与 x=-1 时的值,并判断 f(x)在区间[-1,2]上有没有零
点.
【解】 因为 f(x)=8x7+5x6+3x4+2x+1 =((((((8x+5)x+0)x+3)x+0)x+0)x+2)x+1, 且 x=2,
开始
高一数学秦九韶算法课件

这是怎样的
一种改写方 对该多项式按下面的方式进行改写: 式?最后的
结果是什么?
要求多项式的值,应该先算最内层的一次多项式的值,即 然后,由内到外逐层计算一次多项式的值,即
最后的一 项是什么?
这种将求一个n次多项式f(x)的值转化成求n个一 次多项式的值的方法,称为秦九韶算法。
秦九韶算法的特点:
通过一次式的反复计算,逐步得出高次多 项式的值,对于一个n次多项式,只需做n次乘 法和n次加法即可。
例: 已知一个五次多项式为
用秦九韶算法求这个多项式当x = 5的值。 解:将多项式变形:
按由里到外的顺序,依此计算一次多项式当x = 5时的值:
你从中看到了 怎样的规律? 怎么用程序框 图来描述呢?
所以,当x = 5时,多项式的值等于17255.2
程序框图:
这是一个在秦九韶算法中 反复执行的步骤,因此可 用循环结构来实现。
例如133.59,它可用一个多项式来表示:
133.59=1×102+3×101+3×100 +5×10-1+9×10-2
式中1处在百位,第一个3所在十位,第二个3所在 个位,5和9分别处在十分位和百分位。十进制数是逢 十进一的。
其它进制:
实际上,十进制数只是计数法中的一种,但它不是唯一 记数法。除了十进制数,生产生活中还会遇到非十进制的 记数制。如时间:60秒为1分,60分为1小时,它是六十进 制的。两根筷子一双,两只手套为一副,它们是二进制的。
开始
输入f(x)的系数: a0,a1,a2,a3,a4a5
输入x0
n=1 v=a5
n≤5?
Y
输出v
结束
n=n+1 v=vx0+a5-n N
高中数学必修3公开课课件 1.3.2算法案例--秦九韶算法

次数,如果一个算法从理论上需要超出计算机允 许范围内的运算次数,那么这样的算法就只能是 一个理论算法.在多式求值的各种算法中,秦九 韶算法是一个优秀算法.
10
课后再做好复习巩固. 谢谢!
再见!
新疆 王新敞
奎屯
王新敞 特级教师 源头学子小屋 wxckt@ 新疆奎屯
再统计一下计算当时的值时需要的计算次数,可 以得出仅需4次乘法和5次加法运算即可得出结果。显 然少了6次乘法运算。
这种算法就叫秦九韶算法。
3
秦九韶算法
把一个多项式
f (x) an xn an1xn1 an2 xn2 a1x a0
改写为:
f (x) an xn an1xn1 an2 xn2 a1x a0 (an xn1 an1xn2 an2 xn3 a1)x a0 ((an xn2 an1xn3 a2 )x a1)x a0
·2007·
11
案例2 秦九韶算法
2019年5月6日星期一
1
问题提出
1.辗转相除法和更相减损术,是求两个正整数 的最大公约数的优秀算法,我们将算法转化为程序 后,就可以由计算机来执行运算,实现了古代数学 与现代信息技术的完美结合.
2.对于求n次多项式的值,在我国古代数学中 也有一个优秀算法,即秦九韶算法,本节对这个算 法作些了解和探究.
=……
( ((an x an1)x an2 )x a1) a0
4
秦九韶算法
对于f(x)=(…((anx+an-1)x+ an-2)x+…+a1)x+a0, 由内向外逐层计算一次多项式的值,其算法步骤:
第一步,计算v1=anx+an-1. 第二步,计算v2=v1x+an-2. 第三步,计算v3=v2x+an-3.
10
课后再做好复习巩固. 谢谢!
再见!
新疆 王新敞
奎屯
王新敞 特级教师 源头学子小屋 wxckt@ 新疆奎屯
再统计一下计算当时的值时需要的计算次数,可 以得出仅需4次乘法和5次加法运算即可得出结果。显 然少了6次乘法运算。
这种算法就叫秦九韶算法。
3
秦九韶算法
把一个多项式
f (x) an xn an1xn1 an2 xn2 a1x a0
改写为:
f (x) an xn an1xn1 an2 xn2 a1x a0 (an xn1 an1xn2 an2 xn3 a1)x a0 ((an xn2 an1xn3 a2 )x a1)x a0
·2007·
11
案例2 秦九韶算法
2019年5月6日星期一
1
问题提出
1.辗转相除法和更相减损术,是求两个正整数 的最大公约数的优秀算法,我们将算法转化为程序 后,就可以由计算机来执行运算,实现了古代数学 与现代信息技术的完美结合.
2.对于求n次多项式的值,在我国古代数学中 也有一个优秀算法,即秦九韶算法,本节对这个算 法作些了解和探究.
=……
( ((an x an1)x an2 )x a1) a0
4
秦九韶算法
对于f(x)=(…((anx+an-1)x+ an-2)x+…+a1)x+a0, 由内向外逐层计算一次多项式的值,其算法步骤:
第一步,计算v1=anx+an-1. 第二步,计算v2=v1x+an-2. 第三步,计算v3=v2x+an-3.
1.3.2《算法案例---秦九韶算法》课件(1)(新人教A版必修3) 公开课一等奖课件

5 4 3 2
思考:从内到外,如果把每一个括号都看 成一个常数,那么变形后的式子中有哪些 “一次式”?x的系数依次是什么?
(3)若将x的值代入变形后的式子中,那 么求值的计算过程是怎样的? 将变形前x的系数乘以x的值,加上变形前 的第2个系数,得到一个新的系数;将此系数 继续乘以x的值,再加上变形前的第3个系数, 又得到一个新的系数;继续对新系数做上面的 变换,直到与变形前的最后一个系数相加,得 到一个新的系数为止。这个系数即为所求多项 式的值。这种算法即是“秦九韶算法”
班主任: 我觉得何旋今天取得这样的成绩, 我觉得,很重要的是,何旋是土生土长的北京 二中的学生,二中的教育理念是综合培养学生 的素质和能力。我觉得何旋,她取得今天这么 好的成绩,一个来源于她的扎实的学习上的基 础,还有一个非常重要的,我觉得特别想提的, 何旋是一个特别充满自信,充满阳光的这样一 个女孩子。在我印象当中,何旋是一个最爱笑 的,而且她的笑特别感染人的。所以我觉得她 很阳光,而且充满自信,这是她突出的这样一 个特点。所以我觉得,这是她今天取得好成绩 当中,心理素质 ) x an 2 ) x a1 ) x a0
f ( x) ( (an x an 1 ) x an 2 ) x a1 ) x a0
要求多项式的值,应该先算最内层的一次多项式的值,即 然后,由内到外逐层计算一次多项式的值,即
青 春 风 采
高考总分:
692分(含20分加分) 语文131分 数学145分 英语141分 文综255分
毕业学校:北京二中 报考高校: 北京大学光华管理学 院 北京市文科状元 阳光女孩--何旋
来自北京二中,高考成绩672分,还有20 分加分。“何旋给人最深的印象就是她 的笑声,远远的就能听见她的笑声。” 班主任吴京梅说,何旋是个阳光女孩。 “她是学校的摄影记者,非常外向,如 果加上20分的加分,她的成绩应该是 692。”吴老师说,何旋考出好成绩的秘 诀是心态好。“她很自信,也很有爱心。 考试结束后,她还问我怎么给边远地区 的学校捐书”。
思考:从内到外,如果把每一个括号都看 成一个常数,那么变形后的式子中有哪些 “一次式”?x的系数依次是什么?
(3)若将x的值代入变形后的式子中,那 么求值的计算过程是怎样的? 将变形前x的系数乘以x的值,加上变形前 的第2个系数,得到一个新的系数;将此系数 继续乘以x的值,再加上变形前的第3个系数, 又得到一个新的系数;继续对新系数做上面的 变换,直到与变形前的最后一个系数相加,得 到一个新的系数为止。这个系数即为所求多项 式的值。这种算法即是“秦九韶算法”
班主任: 我觉得何旋今天取得这样的成绩, 我觉得,很重要的是,何旋是土生土长的北京 二中的学生,二中的教育理念是综合培养学生 的素质和能力。我觉得何旋,她取得今天这么 好的成绩,一个来源于她的扎实的学习上的基 础,还有一个非常重要的,我觉得特别想提的, 何旋是一个特别充满自信,充满阳光的这样一 个女孩子。在我印象当中,何旋是一个最爱笑 的,而且她的笑特别感染人的。所以我觉得她 很阳光,而且充满自信,这是她突出的这样一 个特点。所以我觉得,这是她今天取得好成绩 当中,心理素质 ) x an 2 ) x a1 ) x a0
f ( x) ( (an x an 1 ) x an 2 ) x a1 ) x a0
要求多项式的值,应该先算最内层的一次多项式的值,即 然后,由内到外逐层计算一次多项式的值,即
青 春 风 采
高考总分:
692分(含20分加分) 语文131分 数学145分 英语141分 文综255分
毕业学校:北京二中 报考高校: 北京大学光华管理学 院 北京市文科状元 阳光女孩--何旋
来自北京二中,高考成绩672分,还有20 分加分。“何旋给人最深的印象就是她 的笑声,远远的就能听见她的笑声。” 班主任吴京梅说,何旋是个阳光女孩。 “她是学校的摄影记者,非常外向,如 果加上20分的加分,她的成绩应该是 692。”吴老师说,何旋考出好成绩的秘 诀是心态好。“她很自信,也很有爱心。 考试结束后,她还问我怎么给边远地区 的学校捐书”。
数学:1.3.2《算法案例-秦九韶算法》课件(3)(新人教版a版必修3)

知识探究(一):秦九韶算法的基本思想
思考1:对于多项式f(x)=x5+x4+x3+x2+x+1, 求f(5)的值. 若先计算各项的值,然后 再相加,那么一共要做多少次乘法运算 和多少次加法运算?
4+3+2+1=10次乘法运算, 5次加法运算.
思考2:在上述问题中,若先计算x2的值, 然后依次计算x2·x,(x2·x)·x, ((x2·x)·x)·x的值,这样每次都可以 利用上一次计算的结果,再将这些数与x 和1相加,那么一共做了多少次乘法运算 和多少次加法运算?
例2 阅读 INPUT “x=”;a 下列程序,说 n=0 明它解决的实 y=0 际问题是什么? WHLE n<5 y=y+(n+1)*a∧n n=n+1 WEND PRINT y END
求多项式 在x=a时的值.
f (x ) = 1 + 2x + 3x 2 + 4x 3 + 5x 4
小结作业
评价一个算法好坏的一个重要标志 是运算的次数,如果一个算法从理论上 需要超出计算机允许范围内的运算次数, 那么这样的算法就只能是一个理论算法. 在多项式求值的各种算法中,秦九韶算 法是一个优秀算法.
1.3
算法案例
第二课时
问题提出
1.辗转相除法和更相减损术,是求 两个正整数的最大公约数的优秀算法, 我们将算法转化为程序后,就可以由计 算机来执行运算,实现了古代数学与现 代信息技术的完美结合.
2.对于求n次多项式的值,在我国古 代数学中有一个优秀算法,即秦九韶算 法,我们将对这个算法作些了解和探究.
在孤独晓寂结业的那一天,莫艳艳终于下了最后通牒“晓寂妹子,你已经修成正果了,你赶紧的吧,明天你就要去师兄哪里报道了,你不 会还是要以这种别扭的方式出现在别人面前吧,你不着急,我都替你急死了!” 那一个晚上,孤独晓寂因为那样的一种事情都过得惴惴不安,睡不好觉,第二天一大早,莫艳艳便拿了一大堆衣服来到孤独晓寂的房间, 她十分悲壮的开口“我决定了,要亲自改造你,今天,你必须去跟你的师兄打招呼,然后跟他一起去单位报到!” 莫艳艳果断的催促着孤独晓寂抓紧时间洗漱,然后拿出她认为比较适合孤独晓寂的衣服一件件的给她试穿,直到她觉得很满意为止。换好 衣服,又将她的脸蛋涂抹了起来,尽管孤独晓寂小声的抗议“艳艳,我不喜欢化妆,而且我也不会化”。 莫艳艳直接无视她的抗议“妹子,这年头素颜就等于自杀,懂么,姐这是在拯救你!” 将她收拾利索之后硬是将她拽了出去,等在司空阳宇必经之路的转角处。虽然孤独晓寂仍是碎碎念“艳艳,要不今天就算了吧,我觉得这 样的自己好奇怪呀!” 莫艳艳不容置疑的瞪她一眼“到目前为止还没有人敢质疑姐姐我的化妆水平!”顺势对她举了举握紧的拳头、孤独晓寂便悄悄地闭了嘴。 等到司空阳宇快要走近的时候,莫艳艳不容分说的将孤独晓寂一把推向了司空阳宇的身上,孤独晓寂尴尬到脸颊红透,挠了挠头轻声的说 了句“真是不好意思”,便往后退了一步。 司空阳宇不在意的笑了笑“你今天又在跑步么?” 孤独晓寂没反应过来的“啊?”了声。 司空阳宇笑着提醒“我看你好像经常在这条路上跑步。”
人教版高中数学必修三课件:1.3 算法案例(共55张PPT)

解:用辗转相除法求最大公约数:612=468×1+144,468=144×3+36,144=36×4,即612
和468的最大公约数是36. 用更相减损术检验:612和468均为偶数,两次用2约简得153和117,153-117=36,11736=81,81-36=45,45-36=9,36-9=27,27-9=18,18-9=9,所以612和468的最大公约数为
转化为求n个一次多项式的值.
预习探究
知识点二 进位制
1.进位制:进位制是为了计数和运算方便而约定的记数系统,约定“满k进一”就 是 k进制 ,k进制的基数(大于1的整数)就是 k . 2.将k进制数化为十进制数的方法:先把k进制数写成各位上的数字与k的幂的乘积之和 的形式,再按照十进制数的运算规则计算出结果. 3.将十进制数化为k进制数的方法是 除k取余法 .即用k连续去除十进制数所得 的 商 ,直到商为零为止,然后把各步得到的余数 倒序 写出.所得到的就是相应的k 进制数. 4.k进制数之间的转化:首先转化为十进制数,再转化为 k进制数.
第一章 算法初步
1.3 算法案例 第2课时 秦九韶算法与进位制
预习探究
知识点一 秦九韶算法
1.秦九韶算法是我国南宋数学家秦九韶在他的著作《数书九章》中提出的一 个用于计算多项式值的方法. 2.秦九韶算法的方法: 把一个n次多项式f(x)=anxn+an-1xn-1+…+a1x+a0 改写成下列的形式: f(x)=(anxn-1+an-1xn-2+…+a1)x+a0= ((anxn-2+an-1xn-3+…+a2)x+a1)x+a0 =…=
《秦九韶算法》课件

秦九韶பைடு நூலகம்法的代码示例
} ``` Java实现
秦九韶算法的代码示例
01
```java
02
import java.util.Scanner;
public class Main {
03
秦九韶算法的代码示例
01
02
03
public static void main(String[] args) {
Scanner scanner = new
秦九韶算法的步骤解析
01
确定多项式的最高次项 系数和次数。
02
根据秦九韶算法的公式 ,计算一次多项式的系 数。
03
利用一次多项式求值公 式,计算多项式的值。
04
重复以上步骤,直到求 出所有需要计算的多项 式的值。
秦九韶算法的公式推导
根据多项式求值原理,推导出秦九韶 算法的公式。
利用递归的思想,将高次多项式转化 为一次多项式,推导出秦九韶算法的 公式。
编写代码
按照秦九韶算法的步骤,编写相应的代码。需要注意代码 的健壮性和可读性,以便于后续的维护和调试。
测试代码
通过输入不同的多位数,测试代码的正确性和性能。
秦九韶算法的代码示例
C语言实现 ```c
int main() {
秦九韶算法的代码示例
int n, x = 0, i, d; printf("请输入一个多位数:");
05
秦九韶算法的优缺点
秦九韶算法的优点
01
02
03
高效性
秦九韶算法将多项式求值 问题转化为一系列一元运 算,减少了乘法的次数, 提高了运算效率。
易于编程实现
秦九韶算法的步骤明确, 易于转化为程序代码,便 于计算机实现。
秦九韶算法课堂教学PPT

秦九韶算法的数学证明
秦九韶算法的证明
秦九韶算法的正确性可以通过数 学证明来证实,证明的关键在于 利用多项式的递推关系和数学归
纳法。
递推关系的证明
证明秦九韶算法中的递推关系是正 确的,可以通过数学归纳法来证明。
算法复杂度的分析
秦九韶算法的时间复杂度为O(n), 空间复杂度为O(1),比直接法更高 效。
将多项式表示为 “v[0]+v[1]*x+v[2]*x^2+...+v[n]*x ^n”的形式,通过n次乘法和加法运 算得到多项式的值。
利用多项式的递推关系,通过迭代计 算多项式的值,可以减少计算量。
多项式系数与根的关系
多项式的根
多项式等于0的解称为多项式的根 。
系数与根的关系
多项式的系数与多项式的根之间 存在一定的关系,可以通过求解 方程组得到多项式的根。
详细描述
Java语言具有面向对象的特性,能够培养学生的面向对象编程思维。使用Java实 现秦九韶算法可以让学生体验到严谨的编程规范和代码组织方式,同时也能加深 对算法的理解和应用。
使用C实现秦九韶算法
总结词
底层操作,高效执行
详细描述
C语言具有底层操作的特性,能够让学生更加深入地了解计算机底层的工作原理。使用C实现秦九韶算法可以让学 生更加深入地理解算法的实现细节,同时也能提高他们的编程能力和执行效率。
03
秦九韶算法的编程实现
使用Python实现秦九韶算法
总结词
简洁明了,易于理解
详细描述
Python语言具有简洁的语法和易读性,适合初学者学习。使用Python实现秦九 韶算法可以让学生快速理解算法的基本思想,并通过简单的代码实现加深对算 法的理解。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
所以,当x = 5时,多项式的值等于17255.2
练习: 1、已知多项式f(x)=x5+5x4+10x3+10x2+5x+1 用秦九韶算法求这个多项式当x=-2时的值。
2、已知多项式f(x)=2x4-6x3-5x2+4x-6 用秦九韶算法求这个多项式当x=5时的值。
课堂小结:
1、秦九韶算法的方法和步骤 2、秦九韶算法的程序框图
程序框图:
开始
输入f(x)的系数: a0,a1,a2,a3,a4a5
输入x0
n=1
v v
0 k
a n
vx k 1
a (k nk
1,2,, n)
v=a5
这是一个在秦九韶算法中 反复执行的步骤,因此可 用循环结构来实现。
n≤5?
Y
输出v
n=n+1 v=vx0+a5-n N
结束
例: 已知一个五次多项式为
f (x) 5x5 2x4 3.5x3 2.6x2 1.7 x 0.8
用秦九韶算法求这个多项式当x = 5的值。 解:将多项式变形:
f (x) ((((5x 2)x 3.5)x 2.6)x 1.7)x 0.8
按由里到外的顺序,依此计算一次多项式当x =138.5 v3 138.5 5 2.6 689.9 v4 689.9 5 1.7 3451.2 v5 3451.2 5 0.8 17255.2
算法案例
复习引入:
1、求两个数的最大公约数的两种方法分别是 ( )和( )。
2、两个数21672,8127的最大公约数是 ( ) A、2709 B、2606 C、2703 D、2706
新课讲解:
怎样求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值呢?
计算多项式f(x) =x5+x4+x3+x2+x+1
当x = 5的值的算法:
算法1:因为f(x) =x5+x4+x3+x2+x+1
所以f(5)=55+54+53+52+5+1
=3125+625+125+25+5+1
算法2:
= 3906
f(5)=55+54+53+52+5+1
=5×(54+53+52+5+1 ) +1
=5×(5×(53+52+5 +1 )+1 ) +1
=5×(5×(5×(52+5 +1) +1 ) +1 ) +1
=5×(5×(5×(5 ×(5 +1) +1 )+1)+1) +1
算法1:
因为f(x) =x5+x4+x3+x2+x+1 所以f(5)=55+54+53+52+5+1
=3125+625+125+25+5+1 = 3906
共做了1+2+3+4=10次乘法运算,5次加法运算。
然后,由内到外逐v层1 计a算n x一次an多1项式的值,即
v2 v1x an2
v3
v2
x
an
3
最后的一 项是什么?
vn vn1x a0
这种将求一个n次多项式f(x)的值转化成求n个一 次多项式的值的方法,称为秦九韶算法。
秦九韶算法的特点:
通过一次式的反复计算,逐步得出高次 多项式的值,对于一个n次多项式,只需做n 次乘法和n次加法即可。
算法2:
f(5)=55+54+53+52+5+1
=5×(54+53+52+5+1 ) +1 =5×(5×(53+52+5 +1 )+1 ) +1 =5×(5×(5×(52+5 +1) +1 ) +1 ) +1 =5×(5×(5×(5 ×(5 +1) +1 )+1)+1) +1
共做了4次乘法运算,5次加法运算。
((an x n2 an1x n3 a2 ) x a1 ) x a0
( (an x an1 ) x an2 ) x a1 ) x a0
f ( x) ( (an x an1) x an2 ) x a1) x a0
要求多项式的值,应该先算最内层的一次多项式的值,即
《数书九章》——秦九韶算法
设f (x) 是一个n 次的多项式
f ( x) an x n an1x n1 a1x a0
这是怎样的 一种改写方
对该多项式按下面的方式进行改写: 式?最后的
f ( x) an x n an1x n1 a1x a0 结果是什么?
(an x n1 an1x n2 a1 ) x a0
练习: 1、已知多项式f(x)=x5+5x4+10x3+10x2+5x+1 用秦九韶算法求这个多项式当x=-2时的值。
2、已知多项式f(x)=2x4-6x3-5x2+4x-6 用秦九韶算法求这个多项式当x=5时的值。
课堂小结:
1、秦九韶算法的方法和步骤 2、秦九韶算法的程序框图
程序框图:
开始
输入f(x)的系数: a0,a1,a2,a3,a4a5
输入x0
n=1
v v
0 k
a n
vx k 1
a (k nk
1,2,, n)
v=a5
这是一个在秦九韶算法中 反复执行的步骤,因此可 用循环结构来实现。
n≤5?
Y
输出v
n=n+1 v=vx0+a5-n N
结束
例: 已知一个五次多项式为
f (x) 5x5 2x4 3.5x3 2.6x2 1.7 x 0.8
用秦九韶算法求这个多项式当x = 5的值。 解:将多项式变形:
f (x) ((((5x 2)x 3.5)x 2.6)x 1.7)x 0.8
按由里到外的顺序,依此计算一次多项式当x =138.5 v3 138.5 5 2.6 689.9 v4 689.9 5 1.7 3451.2 v5 3451.2 5 0.8 17255.2
算法案例
复习引入:
1、求两个数的最大公约数的两种方法分别是 ( )和( )。
2、两个数21672,8127的最大公约数是 ( ) A、2709 B、2606 C、2703 D、2706
新课讲解:
怎样求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值呢?
计算多项式f(x) =x5+x4+x3+x2+x+1
当x = 5的值的算法:
算法1:因为f(x) =x5+x4+x3+x2+x+1
所以f(5)=55+54+53+52+5+1
=3125+625+125+25+5+1
算法2:
= 3906
f(5)=55+54+53+52+5+1
=5×(54+53+52+5+1 ) +1
=5×(5×(53+52+5 +1 )+1 ) +1
=5×(5×(5×(52+5 +1) +1 ) +1 ) +1
=5×(5×(5×(5 ×(5 +1) +1 )+1)+1) +1
算法1:
因为f(x) =x5+x4+x3+x2+x+1 所以f(5)=55+54+53+52+5+1
=3125+625+125+25+5+1 = 3906
共做了1+2+3+4=10次乘法运算,5次加法运算。
然后,由内到外逐v层1 计a算n x一次an多1项式的值,即
v2 v1x an2
v3
v2
x
an
3
最后的一 项是什么?
vn vn1x a0
这种将求一个n次多项式f(x)的值转化成求n个一 次多项式的值的方法,称为秦九韶算法。
秦九韶算法的特点:
通过一次式的反复计算,逐步得出高次 多项式的值,对于一个n次多项式,只需做n 次乘法和n次加法即可。
算法2:
f(5)=55+54+53+52+5+1
=5×(54+53+52+5+1 ) +1 =5×(5×(53+52+5 +1 )+1 ) +1 =5×(5×(5×(52+5 +1) +1 ) +1 ) +1 =5×(5×(5×(5 ×(5 +1) +1 )+1)+1) +1
共做了4次乘法运算,5次加法运算。
((an x n2 an1x n3 a2 ) x a1 ) x a0
( (an x an1 ) x an2 ) x a1 ) x a0
f ( x) ( (an x an1) x an2 ) x a1) x a0
要求多项式的值,应该先算最内层的一次多项式的值,即
《数书九章》——秦九韶算法
设f (x) 是一个n 次的多项式
f ( x) an x n an1x n1 a1x a0
这是怎样的 一种改写方
对该多项式按下面的方式进行改写: 式?最后的
f ( x) an x n an1x n1 a1x a0 结果是什么?
(an x n1 an1x n2 a1 ) x a0