算法案例(秦九韶算法)
- 格式:ppt
- 大小:1.01 MB
- 文档页数:20
秦九韶公式算法范文首先,我们假设需要求解的多项式为f(x)=a_n*x^n+a_{n-1}*x^{n-1}+...+a_1*x^1+a_0。
公式中的a_i代表多项式的系数,n代表多项式的次数,x代表自变量的值。
步骤一:初始化我们需要设置一个初始值,假设初始值为result = a_n。
这个初始值实际上是多项式的最高次项的系数。
步骤二:迭代计算从最高次项开始,依次迭代计算多项式的系数。
我们从n-1次项开始处理,每次处理一个系数ai。
-第一次迭代:result = result * x + a_{n-1}。
-第二次迭代:result = result * x + a_{n-2}。
-以此类推,直到处理完所有的系数a0为止。
步骤三:输出结果迭代计算结束后,result即为多项式f(x)在x点的值。
通过这种递推的方式,我们可以有效地计算多项式在给定自变量值下的值,而不需要对多项式进行一次次的乘法和加法操作。
这使得计算速度大大提高。
除了求多项式的值,秦九韶公式还可以应用于多项式相乘、除法和求导等问题。
下面举例说明其应用。
1.多项式相乘:假设有两个多项式f(x)和g(x),它们的次数分别为n和m。
我们可以利用秦九韶公式进行多项式的相乘运算。
首先,我们将f(x)和g(x)展开成多项式的系数形式,例如:f(x)=a_n*x^n+a_{n-1}*x^{n-1}+...+a_1*x^1+a_0g(x)=b_m*x^m+b_{m-1}*x^{m-1}+...+b_1*x^1+b_0。
然后,我们利用秦九韶公式分别求出f(x)和g(x)在给定x点的值。
最后,将得到的两个值相乘即可得到多项式相乘的结果。
2.多项式插值:假设我们已知n+1个点的坐标(xi, yi),我们需要求解通过这些点的多项式函数。
首先,我们利用这n+1个点,构建一个n次多项式P(x),通过求解多项式的系数a0, a1, ..., an。
然后,我们可以利用秦九韶公式求出n次多项式P(x)在给定x点的值。
《算法案例:秦九韶算法》教学教案第一篇:《算法案例:秦九韶算法》教学教案秦九韶算法学习目标1.了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质。
2.掌握数据排序的原理能使用直接排序法与冒泡排序法给一组数据排序,进而能设计冒泡排序法的程序框图及程序,理解数学算法与计算机算法的区别,理解计算机对数学的辅助作用。
学习重难点重点:1.秦九韶算法的特点2.两种排序法的排序步骤及计算机程序设计难点:1.秦九韶算法的先进性理解2.排序法的计算机程序设计学法与学习用具学法:1.探究秦九韶算法对比一般计算方法中计算次数的改变,体会科学的计算。
2.模仿排序法中数字排序的步骤,理解计算机计算的一般步骤,领会数学计算在计算机上实施的要求。
学习用具:电脑,计算器,图形计算器学习设想(一)创设情景,揭示课题我们已经学过了多项式的计算,下面我们计算一下多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值,并统计所做的计算的种类及计算次数。
根据我们的计算统计可以得出我们共需要10次乘法运算,5次加法运算。
我们把多项式变形为:f(x)=x2(1+x(1+x(1+x)))+x+1再统计一下计算当x=5时的值时需要的计算次数,可以得出仅需4次乘法和5次加法运算即可得出结果。
显然少了6次乘法运算。
这种算法就叫秦九韶算法。
(二)研探新知/ 41.秦九韶计算多项式的方法f(x)=anxn+an-1xn-1+an-2xn-2+Λ+a1x+a0=(anxn-1+an-1xn-2+an-2xn-3+Λ+a1)x+a0=((anxn-2+an-1xn-3+Λ+a2)x+a1)x+a0=ΛΛ=(Λ((anx+an-1)x+an-2)x+Λ+a1)+a0例1 已知一个5次多项式为f(x)=5x5+2x4+3.5x3-2.6x2+1.7x-0.8 用秦九韶算法求这个多项式当x=5时的值。
解:略思考:(1)例1计算时需要多少次乘法计算?多少次加法计算?(2)在利用秦九韶算法计算n次多项式当x=x0时需要多少次乘法计算和多少次加法计算?练习:利用秦九韶算法计算f(x)=0.83x5+0.41x4+0.16x3+0.33x2+0.5x+1 当x=5时的值,并统计需要多少次乘法计算和多少次加法计算?例2 设计利用秦九韶算法计算5次多项式f(x)=a5x5+a4x4+a3x3+a2x2+a1x+a0当x=x0时的值的程序框图。