高中数学必修三132秦九韶算法
高中数学必修三第一章09秦九韶算法与进位制
高中数学必修三第一章09秦九韶算法与进位制一、引言进位制是现代数学的基础之一,我们所使用的十进制数即是以10为基数的进位制。
而在高中数学必修三第一章中,也介绍了中国古代的一种进位制算法,秦九韶算法,用于做乘法运算。
本文将介绍秦九韶算法与进位制的相关内容。
二、进位制的基础进位制是指一种数的表示方法,采用固定的数字符号和固定的位权,每增加一个位权,数字符号变化一次。
在十进位制中,数字符号为0、1、2、3、4、5、6、7、8、9,位权从右到左依次为1、10、100、1000...,而各个位上的数字符号乘以相应的位权相加即可得到整个数的值。
例如,数1234的表示方式为:(1*1000)+(2*100)+(3*10)+(4*1)=1234进位制的特点是能够方便地进行乘法、除法和算术运算,因此在数学中得到广泛应用。
三、秦九韶算法的定义秦九韶算法,又称秦九韶势算法,是中国古代的一种进位制乘法运算方法,被广泛应用于古代的大量算术题目和通用计算。
其基本思想是将待乘数按照位权展开,然后进行分段相乘在求和的操作。
四、秦九韶算法的步骤1.将被乘数按照位权展开,将每一位上的数乘以相应的位权。
例如,对于被乘数为A=1234,展开后为:A=(1*1000)+(2*100)+(3*10)+(4*1)=1000+200+30+42.将乘数按位权展开。
例如,对于乘数为B=5678,展开后为:B=(5*1000)+(6*100)+(7*10)+(8*1)=5000+600+70+83.分段相乘并求和。
将A和B的每一位进行相乘,然后求和。
五、秦九韶算法的优点1.简单方便:秦九韶算法将乘法运算简化为分段相乘和求和,相对于纯手工计算乘法步骤较为简单,易于操作。
2.提高效率:乘法是基本的数学运算之一,而秦九韶算法能够提高乘法运算的速度和效率,节省计算时间。
3.通用性强:秦九韶算法适用于任意大小的数,无论是小数或大数之间的乘法运算。
六、秦九韶算法的应用秦九韶算法不仅仅在古代被广泛应用于计算、商业和实际生活中的数学问题,同时也是其他进位制乘法算法的基础。
数学知识点人教A版高中数学必修三1.3《算法案例(秦九韶算法)》word教案-总结
时案例2 秦九韶算法(一)导入新课思路1(情境导入)大家都喜欢吃苹果吧,我们吃苹果都是从外到里一口一口的吃,而虫子却是先钻到苹果里面从里到外一口一口的吃,由此看来处理同一个问题的方法多种多样.怎样求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值呢?方法也是多种多样的,今天我们开始学习秦九韶算法.思路2(直接导入)前面我们学习了辗转相除法与更相减损术,今天我们开始学习秦九韶算法.(二)推进新课、新知探究、提出问题(1)求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值有哪些方法?比较它们的特点.(2)什么是秦九韶算法?(3)怎样评价一个算法的好坏?讨论结果:(1)怎样求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值呢?一个自然的做法就是把5代入多项式f(x),计算各项的值,然后把它们加起来,这时,我们一共做了1+2+3+4=10次乘法运算,5次加法运算.另一种做法是先计算x2的值,然后依次计算x2·x,(x2·x)·x,((x2·x)·x)·x的值,这样每次都可以利用上一次计算的结果,这时,我们一共做了4次乘法运算,5次加法运算.第二种做法与第一种做法相比,乘法的运算次数减少了,因而能够提高运算效率,对于计算机来说,做一次乘法运算所用的时间比做一次加法运算要长得多,所以采用第二种做法,计算机能更快地得到结果.(2)上面问题有没有更有效的算法呢?我国南宋时期的数学家秦九韶(约1202~1261)在他的著作《数书九章》中提出了下面的算法:把一个n次多项式f(x)=a n x n+a n-1x n-1+…+a1x+a0改写成如下形式:f(x)=a n x n+a n-1x n-1+…+a1x+a0=(a n x n-1+a n-1x n-2+…+a1)x+ a0=((a n x n-2+a n-1x n-3+…+a2)x+a1)x+a0=…=(…((a n x+a n-1)x+a n-2)x+…+a1)x+a0.求多项式的值时,首先计算最内层括号内一次多项式的值,即v1=a n x+a n-1,然后由内向外逐层计算一次多项式的值,即v2=v1x+a n-2,v3=v2x+a n-3,…v n=v n-1x+a0,这样,求n次多项式f(x)的值就转化为求n个一次多项式的值.上述方法称为秦九韶算法.直到今天,这种算法仍是多项式求值比较先进的算法.(3)计算机的一个很重要的特点就是运算速度快,但即便如此,算法好坏的一个重要标志仍然是运算的次数.如果一个算法从理论上需要超出计算机允许范围内的运算次数,那么这样的算法就只能是一个理论的算法.(三)应用示例例1 已知一个5次多项式为f(x)=5x5+2x4+3.5x3-2.6x2+1.7x-0.8,用秦九韶算法求这个多项式当x=5时的值.解:根据秦九韶算法,把多项式改写成如下形式:f(x)=((((5x+2)x+3.5)x-2.6)x+1.7) x-0.8,按照从内到外的顺序,依次计算一次多项式当x=5时的值:v 0=5;v 1=5×5+2=27;v 2=27×5+3.5=138.5;v 3=138.5×5-2.6=689.9;v 4=689.9×5+1.7=3 451.2;v 5=3 415.2×5-0.8=17 255.2;所以,当x=5时,多项式的值等于17 255.2.算法分析:观察上述秦九韶算法中的n 个一次式,可见v k 的计算要用到v k-1的值,若令v 0=a n ,我们可以得到下面的公式:⎩⎨⎧=+==--).,,2,1(,10n k a x v v a v k n k kn 这是一个在秦九韶算法中反复执行的步骤,因此可用循环结构来实现.算法步骤如下:第一步,输入多项式次数n 、最高次的系数a n 和x 的值.第二步,将v 的值初始化为a n ,将i 的值初始化为n-1.第三步,输入i 次项的系数a i .第四步,v=vx+a i ,i=i-1.第五步,判断i 是否大于或等于0.若是,则返回第三步;否则,输出多项式的值v.程序框图如下图:程序:INPUT “n=”;nINPUT “an=”;aINPUT “x=”;xv=ai=n-1WHILE i >=0PRINT “i=”;iINPUT “ai=”;av=v*x+ai=i-1WENDPRINT vEND点评:本题是古老算法与现代计算机语言的完美结合,详尽介绍了思想方法、算法步骤、程序框图和算法语句,是一个典型的算法案例.变式训练请以5次多项式函数为例说明秦九韶算法,并画出程序框图.解:设f(x)=a5x5+a4x4+a3x3+a2x2+a1x+a0首先,让我们以5次多项式一步步地进行改写:f(x)=(a5x4+a4x3+a3x2+a2x+a1)x+a0=((a5x3+a4x2+ a3x+a2)x+a1)x+a0=(((a5x2+a4x+ a3)x+a2)x+a1)x+a0=((((a5x+a4)x+ a3)x+a2)x+a1)x+a0.上面的分层计算,只用了小括号,计算时,首先计算最内层的括号,然后由里向外逐层计算,直到最外层的括号,然后加上常数项即可.程序框图如下图:例2 已知n次多项式P n(x)=a0x n+a1x n-1+…+a n-1x+a n,如果在一种算法中,计算k x0(k=2,3,4,…,n)的值需要k-1次乘法,计算P3(x0)的值共需要9次运算(6次乘法,3次加法),那么计算P10(x0)的值共需要__________次运算.下面给出一种减少运算次数的算法:P0(x)=a0,P k+1(x)=xP k(x)+a k+1(k=0,1,2,…,n-1).利用该算法,计算P3(x0)的值共需要6次运算,计算P10(x0)的值共需要___________次运算.答案:65 20点评:秦九韶算法适用一般的多项式f(x)=a n x n+a n-1x n-1+…+a1x+a0的求值问题.直接法乘法运算的次数最多可到达2)1(nn,加法最多n次.秦九韶算法通过转化把乘法运算的次数减少到最多n 次,加法最多n次.例3 已知多项式函数f(x)=2x5-5x4-4x3+3x2-6x+7,求当x=5时的函数的值.解析:把多项式变形为:f(x)=2x5-5x4-4x3+3x2-6x+7=((((2x-5)x-4)x+3)x-6)x+7.计算的过程可以列表表示为:最后的系数2 677即为所求的值.算法过程:v0=2;v1=2×5-5=5;v2=5×5-4=21;v3=21×5+3=108;v4=108×5-6=534;v5=534×5+7=2 677.点评:如果多项式函数中有缺项的话,要以系数为0的项补齐后再计算.(四)知能训练当x=2时,用秦九韶算法求多项式f(x)=3x5+8x4-3x3+5x2+12x-6的值.解法一:根据秦九韶算法,把多项式改写成如下形式:f(x)=((((3x+8)x-3)x+5)x+12)x-6.按照从内到外的顺序,依次计算一次多项式当x=2时的值.v0=3;v1=v0×2+8=3×2+8=14;v2=v1×2-3=14×2-3=25;v3=v2×2+5=25×2+5=55;v4=v3×2+12=55×2+12=122;v5=v4×2-6=122×2-6=238.∴当x=2时,多项式的值为238.解法二:f(x)=((((3x+8)x-3)x+5)x+12)x-6,则f(2)=((((3×2+8)×2-3)×2+5)×2+12)×2-6=238.(五)拓展提升用秦九韶算法求多项式f (x)=7x7+6x6+5x5+4x4+3x3+2x2+x当x=3时的值.解:f(x)=((((((7x+6)+5)x+4)x+3)x+2)x+1)xv0=7;v1=7×3+6=27;v2=27×3+5=86;v3=86×3+4=262;v4=262×3+3=789;v5=789×3+2=2 369;v6=2 369×3+1=7 108;v7=7 108×3+0=21 324.∴f(3)=21 324.(六)课堂小结1.秦九韶算法的方法和步骤.2.秦九韶算法的计算机程序框图.(七)作业已知函数f(x)=x3-2x2-5x+8,求f(9)的值.解:f(x)=x3-2x2-5x+8=(x2-2x-5)x+8=((x-2)x-5)x+8∴f(9)=((9-2)×9-5)×9+8=530.。
人教版高中数学必修3《秦九韶算法》说课稿(3)说课稿
人教版高中数学必修3《秦九韶算法》说课稿(3)说课稿人教版高中数学必修3《秦九韶算法》说课稿各位老师:大家好!我叫___,来自__。
我说课的题目是《秦九韶算法》,内容选自于新课程人教A版必修3第一章第三节,课时安排为一个课时。
下面我将从教材分析、教学目标分析、教学方法与手段分析、学法分析和教学过程分析等五大方面来阐述我对这节课的分析和设计:一、教材分析1.教材所处的地位和作用本节课是继上节课学习了算法案例的案例一之后,继续学习的算法案例二,学生们在学习__古代数学中的算法案例二时,进一步体会算法的特点。
学习了秦九韶算法之后,能使许多复杂的算法简单化,减少计算次数提高计算效率。
2.教学的重点和难点重点:秦九韶算法的特点及其程序设计(理解秦九韶算法的思想。
)难点:秦九韶算法的先进性理解及其程序设计(用循环结构表示算法步骤。
)二、教学目标分析1.知识与技能目标:了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质。
2.过程与方法目标:模仿秦九韶计算方法,体会古人计算构思的巧妙。
了解数学计算转换为计算机计算的途径,从而探究计算机算法与数学算法的区别,体会计算机对数学学习的辅助作用。
3.情感,态度和价值观目标通过对秦九韶算法的学习,了解__古代数学家对数学的贡献,充分认识到我国文化历史的悠久。
三、教学方法与手段分析1.教学方法:充分发挥学生的主体作用和教师的主导作用,采用启发式,并遵循循序渐进的教学原则。
这有利于学生掌握从现象到本质,从已知到未知逐步形成概念的学习方法,有利于发展学生抽象思维能力和逻辑推理能力。
2.教学手段:通过各种教学媒体(计算机)调动学生参与课堂教学的主动性与积极性。
四、学法分析探究秦九韶算法,对比一般计算方法中计算次数的改变,体会科学的计算方法。
五、教学过程分析㈠创设情景在课的开始,给出一个例题:例1设计求多项式f(_)=2_5-5_4-4_33_2-6_7当_=5时的值的算法。
132秦九韶算法
132秦九韶算法秦九韶算法,又称陈子算经,是中国古代的一种快速计算多项式值的算法。
秦九韶是南宋时期的数学家,他发明此算法是为了计算高次多项式的值,提高了计算速度,对于古代数学的发展起到了重要的推动作用。
秦九韶算法的核心思想是利用代数恒等式的性质,将一个多项式表达式转化为多个相同形式的和式,从而减少重复计算的次数。
具体实现上,秦九韶算法采用了一种类似于“二分”的分治策略,将多项式按照相同的幂次进行组合,然后再进行逐步的计算。
对于一个次数为n的多项式:f(x) = a0 + a1 * x + a2 * x^2 + ... + an * x^n利用秦九韶算法,可以将其转化为如下形式:f(x) = (a0 + (a1 + (a2 + ... + (an * x) * x) * x) * x...)其中,an通过不断的迭代乘法与加法运算得到最终的结果。
秦九韶算法的优点在于大大减少了重复计算的次数,通过上述的递归过程,每一次迭代都将多项式的次数减小1,节省了大量的时间和计算资源。
这使得秦九韶算法在计算高次多项式值时具有很高的效率。
除了计算多项式的值,秦九韶算法还可以用于多项式的乘法和除法运算。
在乘法运算中,可以利用类似的思路,将多项式拆分为多个相同形式的和式,分别计算后再进行累加得到最终结果。
在除法运算中,可以通过逆向运算,从高次项逐渐减小到低次项。
在实际应用中,秦九韶算法被广泛应用于科学计算、数据处理和图像处理等领域。
由于其高效的计算速度,能够大大提高计算的效率,尤其对于大规模数据的处理非常有效。
此外,秦九韶算法也被一些编程语言内置为库函数,方便开发者直接调用。
虽然秦九韶算法在计算多项式值时十分高效,但是需要注意的是,该算法对于多个不同的多项式,每次计算的系数都需要重新初始化。
此外,秦九韶算法对于一些特殊情况的处理可能会出现误差,例如除法运算中的除零错误,开发者需要在实际应用中进行适当的处理。
总之,秦九韶算法是中国古代的一种重要数学算法,通过利用代数恒等式的性质,将多项式转化为和式进行计算,大大减少了重复计算的次数,提高了计算效率。
人教A版必修3课件:1.3.2秦九邵算法
项的系数
第三步,输入i次项的系数ai.
第四步,v=vx+ai,i=i-1. 第五步,判断i≥0是否成立.若是,则返回第 式的值v. 二步;否则,输出多项
思考2:该算法的程序框图如何表示? 开始 输入 n , an , x 的 值 v=an i=n-1 i=i1 v=vx+ai i≥0? 是 否 输出v 结束 输入ai
4次乘法运算,5次加法运算.
思考3:利用后一种算法求多项式f(x)=anxn+an-1xn-1+…+a1x+a0的值,这个 多项式应写成哪种形式?
f(x)=anxn+an-1xn-1+…+a1x+a0 =(anxn-1+an-1xn-2+…+a2x+a1)x+a0 =((anxn-2+an-1xn-3+…+a2)x+a1)x+a0 =… =(…((anx+an-1)x+an-2)x+…+a1)x+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. …
第n步,计算vn=vn-1x+a0.
思考5:上述求多项式 f(x)=anxn+an-1xn-1+…+a1x+a0的值的方法 称为秦九韶算法,利用该算法求f(x0)的值,一共需要多少次乘法运算, 多少次加法运算?
高中数学知识点总结:秦九韶算法与排序
高中数学知识点总结:秦九韶算法与排序
秦九韶算法与排序
1、秦九韶算法概念:
f(x)=a n x n+a n-1x n-1+….+a1x+a0求值问题
f(x)=a n x n+a n-1x n-1+….+a1x+a0=( a n x n-1+a n-1x n-2+….+a1)x+a0 =(( a n x n-2+a n-1x n-3+….+a2)x+a1)x+a0 =......=(...( a n x+a n-1)x+a n-2)x+...+a1)x+a0
求多项式的值时,首先计算最内层括号内依次多项式的值,即v1=a n x+a n-1
然后由内向外逐层计算一次多项式的值,即
v2=v1x+a n-2 v3=v2x+a n-3 ......v n=v n-1x+a0
这样,把n次多项式的求值问题转化成求n个一次多项式的值的问题。
2、两种排序方法:直接插入排序和冒泡排序
1、直接插入排序
基本思想:插入排序的思想就是读一个,排一个。
将第1个数放入数组的第1个元素中,以后读入的数与已存入数组的数进行比较,确定它在从大到小的排列中应处的位置.将该位置以及以后的元素向后推移一个位置,将读入的新数填入空出的位置中.(由于算法简单,可以举例说明)
2、冒泡排序
基本思想:依次比较相邻的两个数,把大的放前面,小的放后面.即首先比较第1个数和第2个数,大数放前,小数放后.然后比较第2个数和第3个数......直到比较最后两个数.第一趟结束,最小的一定沉到最后.重复上过程,仍从第1个数开始,到最后第2个数...... 由于在排序过程中总是大数往前,小数往后,相当气泡上升,所以叫冒泡排序.
高中数学知识点总结第 1 页共1 页。
【高中数学必修三】1.3.2秦九韶算法
v0 an v k v k 1 x an k ( k 1, 2, , n)
这种将求一个n次多项式f(x)的值转化成求n个 一次多项式的值的方法,称为秦九韶算法
例2 已知一个五次多项式为
f ( x ) 5 x 5 2 x 4 3.5 x 3 2.6 x 2 1.7 x 0.8
显然,采用第二种算法,计算机能够更快地得到结果。
那么,有没有更有效的算法呢?
《数书九章》——秦九韶算法 设 f ( x) 是一个n 次的一元多项式
f ( x ) an x n an1 x n1 a1 x a0
对该多项式按下面的方式进行改写
f ( x ) an x n an1 x n1 a1 x a0 (an x n1 an1 x n 2 a1 ) x a0 ((an x n 2 an1 x n 3 a2 ) x a1 ) x a0 ( (an x an1 ) x an 2 ) x a1 ) x a0
算法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
10次的乘法运算,5次的加法运算
4次的乘法运算,5次的加法运算 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
算法一:把5代入,计算各项的值,然后把它们加起来。
高中数学必修3_1.3.2算法案例(秦九韶算法)(z)
按由里到外的顺序,依此计算一次多项式当x = 5时的值:
v0 5 v1 5 5 2 27 v2 27 5 3.5 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
结束
例2 已知一个五次多项式为
5 4
f ( x) 5x 2 x 3.5x 2.6 x 1.7 x 0.8
3 2
用秦九韶算法求这个多项式当x = 5的值。 解: 将多项式变形:
f ( x) ((((5 x 2) x 3.5) x 2.6) x 1.7) x 0.8
然后由内向外逐层计算一次多项式的值,即
v2=v1x+an-2, v3=v2x+an-3, ……, vn=vn-1x+a0.
这样,求n次多项式f(x)的值就转化为求n个 一次多项式的值.这种算法称为秦九韶算法.
v1=anx+an-1,
v2=v1x+an-2,
v3=v2x+an-3, ……, vn=vn-1x+a0.
-4 25 21
3 105 108
-6 7 540 2670 534 2677
多项式 的值.
所以,当x=5时,多项式的值是2677.
练一练:用秦九韶算法求多项式 f(x)=2x6-5x5-4x3+3x2-6x当x=5时的值. 解:原多项式先化为:
f(x)=2x6-5x5 +0×x4-4x3+3x2-6x+0Βιβλιοθήκη 1、辗转相除法(欧几里得算法)
(1)算理: 所谓辗转相除法,就是对于给定的两个 数,用较大的数除以较小的数。若余数不为零,则 将余数和较小的数构成新的一对数,继续上面的除 法,直到大数被小数除尽,则这时较小的数就是原 来两个数的最大公约数。
高中数学人教A版必修三 1.3.2 秦九韶算法与进位制 课件(73张) (1)
2
4.已知函数 f(x)=x3-2x2-5x+6,试用秦九韶算法求 f(10)的值.
【解析】根据秦九韶算法,把多项式改写成如下形 式:f(x)=x3-2x2-5x+6=(x2-2x-5)x+6=((x-2)x-5)x+6.故把 x=10 代入函数式,得 f(10)=((10-2)×10-5)×10+6=756.
预学 1:秦九韶计算多项式的方法 f(x)=anxn+an-1xn-1+…+a1x+a0 =(anxn-1+an-1xn-2+…+a1)x+a0 =((anxn-2+an-1xn-3+…+a2)x+a1)x+a0 …… =(…((anx+an-1)x+an-2)x+…+a1)x+a0. 求多项式的值时,首先计算最内层括号内一次多项式的值, 即 v1=anx+an-1,然后由内向外逐层计算一次多项式的值,即 v2=v1x+an-2,v3=v2x+an-3,…,vn=vn-1x+a0.这样,把 n 次多项式的求值 问题转化为求 n 个一次多项式的值的问题,上述方法称为秦九韶 算法.
练一练:已知一个 3 次多项式为 f(x)=x -2x +x-1,用秦九 韶算法求当 x=2 时这个多项式的值.
3
2
【解析】f(x)=x3-2x2+x-1=((x-2)x+1)x-1=1.
预学 2:秦九韶算法是多项式求值的算法,秦九韶算法的 特点 (1)化高次多项式求值为一次多项式求值; (2)减少了运算次数,提高了效率; (3)步骤重复执行,容易用计算机实现.利用秦九韶算法计算 多项式的值的关键是能正确地将所给多项式改写,然后由内向外 逐次计算,由于后项计算用到前项的结果,故应认真、细心,确保 中间结果的准确性.若在多项式中有几项不存在时,可将这些项 n 的系数看成 0,即把这些项看作 0·x . 想一想:秦九韶算法与直接计算相比较有何优点?
新人教A版必修三1.3《算法案例---秦九韶算法》ppt课件
《数书九章》——秦九韶算法 设 f ( x) 是一个n 次的多项式
f ( x) an x an 1 x a1 x a0 对该多项式按下面的方式进行改写:
n
n 1
f ( x) an x n an 1 x n 1 a1 x a0
算 法 案 例
第二课时
复习引入:
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
v 0 a n v k v k 1 x a n k ( k 1,2, , n)
这是一个在秦九韶算法中 反复执行的步骤,因此可 用循环结构来实现。
n=1
v=a5
n=n+1 n≤5?
Y
v=vx0+a5-n
N
输出v
结束
例: 已知一个五次多项式为
5 4 3
f ( x) 5 x 2 x 3.5 x 2.6 x 1.7 x 0.8
f ( x) ( (an x an 1 ) x an 2 ) x a1 ) x a0
要求多项式的值,应该先算最内层的一次多项式的值,即 然后,由内到外逐层计算一次多项式的值,即
v1 an x an 1 v2 v1 x an 2
人教B版必修3高中数学1.3.2秦九韶算法与排序word教学案
四川省古蔺县中学高中数学必修三:1.3.2 秦九韶算法与排序【教学目标】:(1)了解秦九韶算法的计算进程,并明白得利用秦九韶算法能够减少计算次数提高计算效率的实质。
(2)把握数据排序的原理能利用直接排序法与冒泡排序法给一组数据排序,进而能设计冒泡排序法的程序框图及程序,明白得数学算法与运算机算法的区别,明白得运算机对数学的辅助作用。
【教学重点】秦九韶算法的特点及其程序设计,两种排序法的排序步骤及其程序设计(重点放在循环语句的应用上)【教学进程】秦九韶计算多项式的方式例1、设计求多项式f(x)=2x5-5x4-4x3+3x2-6x+7当x=5时的值的算法,并写出程序。
个别学生提出一样的解决方案,如:x=5y=2 * x^5 – 5 * x^4 – 4 * x^3 + 3 * x^2 – 6 * x + 7PRINT“y=”;yEND提问:例1计算时需要多少次乘法计算?多少次加法计算?有什么优缺点?学生答:上述算法一共做了解15次乘法运算,5次加法运算,优势是简单、易懂。
缺点是不通用,不能解决任意多项式的求值问题,而且计算效率不高。
提问:计算x的幂时,能够利用前面的计算结果,以减少计算量,即先计算x2,然后依次计算,().x, (().x).x的值,如此计算上述多项式的值,一共需要多少次乘法,多少次加法?学生答:上述算法一共做了解4次乘法运算,5次加法运算。
结论:第二种做法与第一种做法相较,乘法的运算次数减少了,因此能提高运算效率,而且关于运算机来讲,做一次乘法所需的运算时刻比做一次加法要长得多,因此第二种做法更快地取得结果。
咱们把多项式变形为:f(x)= 2x5-5x4-4x3+3x2-6x+7=((((2x-5)x-4)x+3)x-6)x+7从内到外,若是把每一个括号都看成一个常数,x的系数依次是什么?用图表能够表示为:多项式x系数 2 -5 -4 3 -6 7 运算10 25 105 540 2670 +变形后x的"系数" 2 5 21 108 534 2677 *5最后的系数2677即为所求的值,让学生描述上述计算进程。
人教版高中数学必修三1.3算法案例—秦九韶算法ppt课件
=((((2x-5)x-4)x+3)x-6)x+7
问题1:怎样求多项式f(x)=2x5-5x4-4x3+3x2-6x+7当x=5时的值?
方法三:能否有更好的算法,解决任意多项式的求值问题?
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
学名著。
秦九韶
问题1:怎样求多项式f(x)=2x5-5x4-4x3+3x2-6x+7当x=5时的值?
方法一
x=5 f=2﹡x^5-5﹡x^4-4﹡x^3+3﹡x^2-6﹡x+7 PRINT f END 15次乘法运算,5次加法运算 此算的优点是简单,易懂;缺点是不通用,不能解决任意多项多求值问题,而且计 算效率不高.
问题1:怎样求多项式f(x)=2x5-5x4-4x3+3x2-6x+7当x=5时的值?
方法二:先计算x2的值,然后依次计算x2·x,(x2·x)·x,((x2·x)·x)·x的值,
这样每次都可以利用上一次计算的结果. 9次乘法运算,5次加法运算 与第一种做法相比,这种做法中,乘法的运算次数减少了,因而能提高运算效率. 而且对于计算机来说,做一次乘法所需的运算时间比做一次加法要长得多,因此第二 种做法能更快地得到结果.
v0=2
v1=v0x-5=2×5-5=5 v2=v1x-4=5×5-4=21
=((((2x-5)x-4)x+3)x-6)x+7
① ② ③
④
人教版高中数学必修3第一章算法初步-《1.3算法案例:秦九韶算法》教案
1.3算法案例:秦九韶算法1、利用秦九韶算法求多项式1153723+-+x x x 在23=x 的值时,在运算中下列哪个值用不到( )A 、164B 、3767C 、86652D 、851692、利用秦九韶算法计算多项式1876543x f(x)23456++++++x x x x x = 当x=4的值的时候,需要做乘法和加法的次数分别为( )A 、6,6B 、5,6C 、5,5D 、6,53、利用秦九韶算法求多项式1352.75.38123)(23456-++-++=x x x x x x x f 在6=x 的值,写出详细步骤。
4、下图的框图是一古代数学家的一个算法的程序框图,它输出的 结果s 表示( )A 、3210a a a a +++的值B 、300201032x a x a x a a +++的值 C 、303202010x a x a x a a +++的值 D 、以上都不对5、已知n 次多项式1011()n n n n n P x a x a x a x a --=++++,如果在一种算法中,计算0k x (k =2,3,4,…,n )的值需要k -1次乘法,(1)计算30()P x 的值需要9次运算(6次乘法,3次加法),那么计算0()n P x 的值需要多少次运算?(2)若采取秦九韶算法:0011(),()()k k k P x a P x xP x a ++==+(k =0, 1,2,…,n -1),计算30()P x 的值只需6次运算,那么计算0()n P x 的值共需要多少次运算?(3)若采取秦九韶算法,设a i =i+1,i=0,1,…,n ,求P 5(2)(写出采取秦九韶算法的计算过程)答案:1、D2、A3、解:13)5)2.7)5.3)8)123((((()(-++-++=x x x x x x x f2.243168)6(2.2431681362.40530562.67542.765.11245.36188863012635645342312010==-⨯==+⨯==+⨯==-⨯==+⨯==+⨯==f v v v v v v v v v v v v v4、C5、n +3)(2)2n ;(3)∵0011(),()()k k k P x a P x xP x a ++==+,∴P0(2)=1,P1(2)=2P0(2)+2=4;P2(2)=2P1(2)+3=11;P3(2)=2P2(2)+4=26;P4(2)=2P3(2)+5=57;P5(2)=2P4(2)+6=120。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
那么,有没有更有效的算法呢?
《数书九章》——秦九韶算法
设 f (x) 是一个n 次的一元多项式
f ( x) an xn an1 xn1 a1 x a0
对该多项式按下面的方式进行改写
f ( x) an xn an1 xn1 a1 x a0
例2 已知一个五次多项式为
f ( x) 5x5 2x4 3.5x3 2.6x2 1.7x 0.8
用秦九韶算法求这个多项式当x = 5的值.
解: 按由里到外的顺序,依此计算一次多项式当x = 5时的值:
v0 5 v1 5 5 2 27 v3 138.5 5 2.6 689.9
=5x5x5x5x5+5x5x5x5+5x5x5+5x5+5+1 =3125+625+125+25+5+1
= 3906
算法二:先计算x2的值,然后依次计算
x2·x、( x2·x)·x、( ( x2·x)·x)·x 的值
计算多项式f(x) =x5+x4+x3+x2+x+1当x = 5的值
算法2:
f(5)=55+54+53+52+5+1
v2 27 5 3.5 138.5 v4 689.9 5 1.7 3451.2
v5 3451.2 5 0.8 17255.2
所以,x = 5时,多项式的值为17255.2
练习:教材P48、 2
vv0k
an vk1 x
ank
(k 1, 2, , n)
课后必做作业:
请同学们课后阅读教材38页,理解并能识别秦九韶 算法的程序。
课堂小结:
1、秦九韶算法的方法和步骤 2、秦九韶算法的流程图及程序
算法1:因为f(x) =x5+x4+x3+x2+x+1
所以f(5)=55+54+53+52+5+1
=3125+625+125+25+5+1
= 3906 10次的乘法运算,5次的加法运算
算法2:
f(5)=55+54+53+52+5+14次的乘法运算,5次的加法运算
=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
=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
计算多项式f(x) =x5+x4+x3+x2+x+1当x = 5的值
1.3.2 案例2、秦九韶算法
复习
1、求两个数的最大公约数的两种方法分别是( )和
( ).
辗转相除法 更相减损术
2、两个数21672,8127的最大公约数是(A )
A、2709 B、2606 C、2703 D算法是求一元多项式的值的一种方法。
怎样求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值呢?
(an xn1 an1 xn2 ((an xn2 an1 xn3
a1 )x a0 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
要求多项式的值,应该先算最内层的一次多项式的值,即
v1 an x an1
然后,由内到外逐层计算一次多项式的值,即
v2 v1 x an2
v3 v2 x an3
vn vn1 x a0
vv0k
an vk1 x
ank
(k 1, 2, , n)
这种将求一个n次多项式f(x)的值转化成求n个一 次多项式的值的方法,称为秦九韶算法
算法一:把5代入,计算各项的值,然后把它们加起来。 算法二:先计算x2的值,然后依次计算x2·x、 ( x2·x)·x、( ( x2·x)·x)·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