算法案例秦九韶算法

算法案例秦九韶算法

秦九韶算法,又称为秦九韶乘法算法,是中国古代的一种快速计算乘法的方法,由北宋数学家秦九韶所创。这种算法在乘法计算中能够减少乘法和加法的运算次数,从而提高计算效率。下面将详细介绍秦九韶算法的原理和应用。

秦九韶算法的原理是基于多项式的乘法运算。多项式是数学中常见的一种表达形式,可以用来表示各种类型的数学问题。在秦九韶算法中,我们使用多项式的形式来表示乘法运算,通过对多项式的系数进行运算,得到最终的结果。

假设我们要计算两个多项式A(x)和B(x)的乘积,其中A(x)的次数为m,B(x)的次数为n。首先,我们将A(x)和B(x)展开成系数形式:A(x) = a0 + a1*x + a2*x^2 + ... + am*x^m

B(x) = b0 + b1*x + b2*x^2 + ... + bn*x^n

接下来,我们将A(x)和B(x)的系数进行相乘,并将相同次数的项进行合并。具体步骤如下:

1.创建一个长度为(m+n+1)的数组C,用来存储乘积的系数。

2.初始化数组C的所有元素为0。

3. 对于A(x)的每一项ai*x^i,对于B(x)的每一项bj*x^j,将它们的系数相乘并加到C的对应位置上。即C[i+j] += ai*bj。

4.最后,数组C中的元素就是乘积的系数。

通过以上步骤,我们可以得到多项式A(x)和B(x)的乘积的系数。如果我们想要得到乘积的多项式形式,只需要将数组C的系数按照对应次数重新组合即可。这样,我们就完成了乘法运算。

秦九韶算法的优点在于它减少了乘法和加法的运算次数。在传统的乘法算法中,需要进行m*n次乘法和m*n次加法运算。而在秦九韶算法中,只需要进行(m+1)*(n+1)次乘法和(m+n+1)次加法运算。通过减少了乘法运算次数,秦九韶算法能够显著提高计算效率。

秦九韶算法在实际应用中有着广泛的应用。在计算机科学领域,秦九韶算法被应用于多项式插值、信号处理、图像处理等领域。在工程领域,秦九韶算法被应用于电力系统的电压稳定性分析、高速公路的交通流量预测等问题。此外,在数学竞赛中,秦九韶算法也是一种常用的计算方法,能够帮助选手快速准确地计算出乘法结果。

总结来说,秦九韶算法是一种快速计算乘法的方法,通过对多项式的系数进行运算,减少了乘法和加法的运算次数,从而提高了计算效率。它在实际应用中有着广泛的应用,并且在数学竞赛中也是一种常用的计算方法。通过了解和掌握秦九韶算法,我们可以在乘法计算中更加高效地完成计算任务。

1.3算法案例-秦九韶算法教学设计

1.3算法案例(二)__秦九韶算法 一、内容及其解析 本节的教学内容是算法案例中的秦九韶算法,它是求一元多项式的值的一种方法.在初中,学生已经学习了多项式的有关知识,那里是把多项式看作代数式.因此在本段内容的教学之前,应当先向学生说明,这里是函数的观点考察多项式,因此,求自变量取某个实数时的函数值问题,即求多项式的值就是一个常规问题. 二、教学目标及其解析 目标定位 知识与技能:了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质. 过程与方法:模仿秦九韶计算方法,体会古人计算构思的巧妙.了解数学计算转换为计算机计算的途径,从而探究计算机算法与数学算法的区别,体会计算机对数学学习的辅助作用.情感态度与价值观目标:通过对秦九韶算法的学习,了解中国古代数学对世界数学发展的贡献,充分认识到我国文化历史的悠久. 目标解析 1 秦九韶算法是我国南宋数学家秦九韶在他的代表作《数书九章》中提出的一种用于计算一元n 次多项式的值的方法. 三、问题诊断分析 在本节主要存在的问题是学生不能对秦九韶算法的先进性及其程序设计的理解,所以教师要强调当多项式的次数增大时,此种方法的先进性就体现出来了,所以教师要找到规律,让学生体会此种解法的先进性. 四、教学支持条件分析的一般模式 在本节课的教学中准备使用多媒体辅助教学. 五、教学过程设计 问题一 什么事了解秦九韶算法? 小问题1 怎样求多项式1)(2 345+++++=x x x x x x f 当x=5时的值呢? (设计意图:通过具体的例子引入秦九韶算法.)

结论:第一种一共用了10次乘法运算,5次加法运算.而第二种一共用了5次乘法运算,5次加法运算. 小问题2 用秦九韶算法求n 次多项式0111...)(a x a x a x a x f n n n n ++++=--当0x x =(0x 是任意实数)时的值,需要多少次乘法运算,多少次加法运算? 小问题 3 如何用秦九韶算法完成一般多项式 1110()n n n n f x a x a x a x a --=++++ 的求值问题? 要求多项式的值,我们可以把它改写成: 11101210()(()))n n n n n n n f x a x a x a x a a x a x a x a x a ----=++++=+++++ . 首先计算最内层括号内一次多项式的值,即 11n n v a x a -=+,然后由内向外逐层计算一次多项式的值,即212n v v x a -=+,323n v v x a -=+, ,10n n v v x a -=+. 例题1 (课本第38页例2)(设计意图:从实例到一般,先总结实例进而引申到一般) 变式巩固 用秦九韶算法求多项式1432)(2367+-+-=x x x x x f 当x=2时的函数值. 小问题4 你是怎么理解秦九韶算法的? 结论:秦九韶算法将求n 次多项式的值转化为求n 个一次多项式的值. 课堂小结(提问方式) 秦九韶算法计算多项式的值及程序设计 上述的整个过程只需n 次乘法运算和n 次加法运算;观察上述n 个一次式,可发出k v 的计算要用到1k v -的值,若令0n v a =,可得到下列递推公式:01,(1,2,,)n k k n k v a v v x a k n --=??=+=? . 这是一个反复执行的步骤,因此可用循环结构来实现. 计算多项式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 = 3906 算法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

算法案例秦九韶算法

算法案例秦九韶算法 秦九韶算法,又称为秦九韶乘法算法,是中国古代的一种快速计算乘法的方法,由北宋数学家秦九韶所创。这种算法在乘法计算中能够减少乘法和加法的运算次数,从而提高计算效率。下面将详细介绍秦九韶算法的原理和应用。 秦九韶算法的原理是基于多项式的乘法运算。多项式是数学中常见的一种表达形式,可以用来表示各种类型的数学问题。在秦九韶算法中,我们使用多项式的形式来表示乘法运算,通过对多项式的系数进行运算,得到最终的结果。 假设我们要计算两个多项式A(x)和B(x)的乘积,其中A(x)的次数为m,B(x)的次数为n。首先,我们将A(x)和B(x)展开成系数形式:A(x) = a0 + a1*x + a2*x^2 + ... + am*x^m B(x) = b0 + b1*x + b2*x^2 + ... + bn*x^n 接下来,我们将A(x)和B(x)的系数进行相乘,并将相同次数的项进行合并。具体步骤如下: 1.创建一个长度为(m+n+1)的数组C,用来存储乘积的系数。 2.初始化数组C的所有元素为0。 3. 对于A(x)的每一项ai*x^i,对于B(x)的每一项bj*x^j,将它们的系数相乘并加到C的对应位置上。即C[i+j] += ai*bj。 4.最后,数组C中的元素就是乘积的系数。

通过以上步骤,我们可以得到多项式A(x)和B(x)的乘积的系数。如果我们想要得到乘积的多项式形式,只需要将数组C的系数按照对应次数重新组合即可。这样,我们就完成了乘法运算。 秦九韶算法的优点在于它减少了乘法和加法的运算次数。在传统的乘法算法中,需要进行m*n次乘法和m*n次加法运算。而在秦九韶算法中,只需要进行(m+1)*(n+1)次乘法和(m+n+1)次加法运算。通过减少了乘法运算次数,秦九韶算法能够显著提高计算效率。 秦九韶算法在实际应用中有着广泛的应用。在计算机科学领域,秦九韶算法被应用于多项式插值、信号处理、图像处理等领域。在工程领域,秦九韶算法被应用于电力系统的电压稳定性分析、高速公路的交通流量预测等问题。此外,在数学竞赛中,秦九韶算法也是一种常用的计算方法,能够帮助选手快速准确地计算出乘法结果。 总结来说,秦九韶算法是一种快速计算乘法的方法,通过对多项式的系数进行运算,减少了乘法和加法的运算次数,从而提高了计算效率。它在实际应用中有着广泛的应用,并且在数学竞赛中也是一种常用的计算方法。通过了解和掌握秦九韶算法,我们可以在乘法计算中更加高效地完成计算任务。

第2课时案例2秦九韶算法

第2课时案例2 秦九韶算法 导入新课 思路1(情境导入) 大家都喜欢吃苹果吧,我们吃苹果都是从外到里一口一口的吃,而虫子却是先钻到苹果里面从里到外一口一口的吃,由此看来处理同一个问题的方法多种多样.怎样求多项式f(x)=x5+x4+x3+x2+x+1当x=5时的值呢?方法也是多种多样的,今天我们开始学习秦九韶算法. 推进新课 新知探究 提出问题 (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时的值: 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=3 451.2;

(完整版)算法案例教案

课题:§1.3算法案例 第1课时辗转相除法与更相减损术、秦九韶算法 一、教学目标: 根据课标要求:在学生学习了算法的初步知识,理解了表示算法的算法步骤、程序框图和程序三种不同方式以后,再结合典型算法案例,让学生经历设计算法解决问题的全过程,体验算法在解决问题中的重要作用,体会算法的基本思想,提高逻辑思维能力,发展有条理地思考与数学表达能力。制定以下三维目标: 1、知识与技能 理解算法案例的算法步骤和程序框图. 2、过程与方法: 引导学生得出自己设计的算法程序. 3、情感态度与价值观: 体会算法的基本思想,提高逻辑思维能力,发展有条理地思考与数学表达能力. 二、重点与难点: 重点:引导学生得出自己设计的算法步骤、程序框图和算法程序. 解决策略:通过分析解决具体问题的算法步骤来引导学生写出算法,根据算法画出程序框图,再根据框图用规范的语言写出程序。 难点:体会算法的基本思想,提高逻辑思维能力,发展有条理地思考与数学表达能力. 解决策略:让学生能严谨地按照自己是程序框图写出程序。 三、学法与教学用具: 1、学法:直观感知、操作确认。 2、教学用具:多媒体。 四、教学过程 (一)引入课题 大家喜欢打乒乓球吧,由于东、西方文化及身体条件的不同,西方人喜欢横握拍打球,东方人喜欢直握拍打球,对于同一个问题,东、西方人处理问题方式是有所不同的.在小学,我们学过求两个正整数的最大公约数的方法:先用两个数公有的质因数连续去除,一直除到所得的商是互质数为止,然后把所有的除数连乘起来. 当两个数公有的质因数较大

时(如8 251与6 105),使用上述方法求最大公约数就比较困难.下面我们介绍两种不同的算法——辗转相除法与更相减损术,由此可以体会东、西方文化的差异. (二)研探新知 (1)怎样用短除法求最大公约数? (2)怎样用穷举法(也叫枚举法)求最大公约数? (3)怎样用辗转相除法求最大公约数? (4)怎样用更相减损术求最大公约数? 讨论结果: (1)短除法 求两个正整数的最大公约数的步骤:先用两个数公有的质因数连续去除,一直除到所得的商是两个互质数为止,然后把所有的除数连乘起来. (2)穷举法(也叫枚举法) 穷举法求两个正整数的最大公约数的解题步骤:从两个数中较小数开始由大到小列举,直到找到公约数立即中断列举,得到的公约数便是最大公约数. (3)辗转相除法 辗转相除法求两个数的最大公约数,其算法步骤可以描述如下: 第一步,给定两个正整数m,n. 第二步,求余数r:计算m除以n,将所得余数存放到变量r中. 第三步,更新被除数和余数:m=n,n=r. 第四步,判断余数r是否为0.若余数为0,则输出结果;否则转向第二步继续循环执行. 如此循环,直到得到结果为止. 这种算法是由欧几里得在公元前300年左右首先提出的,因而又叫欧几里得算法. (4)更相减损术 我国早期也有解决求最大公约数问题的算法,就是更相减损术. 《九章算术》是中国古代的数学专著,其中的“更相减损术”也可以用来求两个数的最大公约数,即“可半者半之,不可半者,副置分母、子之数,以少减多,更相减损,求其等也.以等数约之.”翻译为现代语言如下: 第一步,任意给定两个正整数,判断它们是否都是偶数,若是,用2约简;若不是,执行第二步,以较大的数减去较小的数,接着把所得的差与较小的数比较,并以大数减小数,继续这个操作,直到所得的数相等为止,则这个数(等数)或这个数与约简的数的乘积就是所求的最大公约数. (三)范例分析

《算法案例(第2课时)》教学设计

1.3 算法案例第2课时(李雪) 一、教学目标 1.核心素养 在学习古代数学家解决数学问题的方法的过程中培养严谨的逻辑思维能力,在利用算法解决数学问题的过程中培养理性的精神和动手实践的能力. 2.学习目标 通过对变形前后的多项式进行计算,进而理解秦九韶算法的数学原理及其意义;3.学习重点 掌握秦九韶算法的数学原理及其计算过程,理解它的实质 4.学习难点 深刻理解秦九韶算法的对多项式计算的意义 二、教学设计 (一)课前设计 1.预习任务 任务1 阅读教材P37-P39,你可以熟练的求解多项式吗?理解秦九韶算法的原理吗?任务2 用不同方法计算多项式,感知二者有什么不同? 2.预习自测 1. 秦九韶算法是我国南宋数学家秦九韶提出的一种用于计算________的值的方法. 【解析】:多项式考查秦九韶算法的定义. 2.秦九韶算法与直接计算多项式的值相比有什么优越性? 【解析】:秦九韶算法在计算多项式的值时,减少了乘法的运算次数,提高了运算效率. (二)课堂设计 1.知识回顾 (1)对于一元n次多项式的计算 (2)本课的秦九韶算法对于求解多项式有什么意义? 2.问题探究

问题探究 什么是秦九韶算法? ●活动一 回顾旧知 在初中,我们已经学过了多项式的计算,下面我们计算一下多项式 1)(2345+++++=x x x x x x f 当5=x 时的值,并统计所做的计算的种类及计算次数.当5=x 时, f (x )x x x x x =+++++=+++++=+++++=543254321555551 312562512525513906 根据我们的计算统计可以得出我们共需要10次乘法运算,5次加法运算. 这是一个这是一个相对复杂的运算过程,有没有简便的方法呢? ●活动二 尝试探索 我们不妨把多项式变形为:1)))1(1(1()(2+++++=x x x x x x f 再统计一下计算当5=x 时的值时需要的计算次数,可以得出仅需4次乘法和5次加法运算即可得出结果.显然少了6次乘法运算. 我们就可以发现,在变形之后再进行计算减少了乘法的运算次数,提高了运算效率 ●活动三 拓广总结 将上述求多项式的方法推广至一般,以上计算多项式的方法就是秦九韶算法. 秦九韶计算多项式的方法:把一个一元n 次多项式改写成如下形式 1210 123120 1322110 12211)))((())(()()(a a x a x a x a a x a x a x a x a a x a x a x a x a a x a x a x a x a x f n n n n n n n n n n n n n n n n n n n +++++==+++++=+++++=+++++=-------------- 求多项式的值时,首先计算最内层括号内一次多项式的值,即n n a x a v -+11=,然后由内向外逐层计算一次多项式的值,即 =n n n n v v v x a , v x a , v v x a .---+++12323102… ==, 这样,求n 次多项式f (x )的值就转化为求n 个一次多项式的值.

P037算法案例---秦九韶算法教案

算法案例---秦九韶算法 教学要求:了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数、提高计算效率的实质;理解数学算法与计算机算法的区别,理解计算机对数学的辅助作用. 教学重点:秦九韶算法的特点及其程序设计. 教学难点:秦九韶算法的先进性理解及其程序设计. 教学过程: 一、复习准备: 1. 分别用辗转相除法和更相减损术求出两个正数623和1513的最大公约数. 2. 设计一个求多项式 5 4 3 2 ()254367 f x x x x x x =--+-+当5x =时的值的算法. (学生自己提出一般的解决方案:将5x =代入多项式进行计算即可) 提问:上述算法在计算时共用了多少次乘法运算?多少次加法运算?此方案有何优缺点?(上述算法一共做了5+4+3+2+1=15次乘法运算,5次加法运算. 优点是简单、易懂;缺点是不通用,不能解决任意多项式的求值问题,而且计算效率不高.) 二、讲授新课: 1. 教学秦九韶算法: ① 提问:在计算x 的幂值时,可以利用前面的计算结果,以减少计算量,即先计算2 x , 然后依次计算2 x x ?,2 ()x x x ??,2 (())x x x x ???的值,这样计算上述多项式的值,一共需 要多少次乘法,多少次加法?(上述算法一共做了4次乘法运算,5次加法运算) ② 结论:第二种做法与第一种做法相比,乘法的运算次数减少了,因而能提高运算效率,而且对于计算机来说,做一次乘法所需的运算时间比做一次加法要长得多,因此第二种做法能更快地得到结果. ③ 更有效的一种算法是: 将 多 项 式 变 形 为 : 5 4 3 2 ( ) 254367 f x x x x x x = - - + - + = , 依次计算2555?-=,55421?-=,2153108?+=,10856534?-=, 534572677?+= 故(5)2677f =. ――这种算法就是“秦九韶算法”. (注意变形,强调格式)

秦九韶算法

《秦九韶算法》教学设计 福建省厦门外国语学校黄宁昌 一、教学内容概述 本节课内容是《普通高中新课程标准实验教科书·数学》人教版必修三第一章第三节第二课时的内容,是在学生学习了算法的概念、程序框图、基本逻辑结构、基本算法语句等内容的基础上学习的,旨在让学生进一步理解算法思想、熟练程序框图的画法、练习三种逻辑结构、熟悉程序语言的编写。是继上节课学习了算法案例的案例一之后,继续学习的算法案例二,学生在学习中国古代数学中的算法案例二时,进一步体会算法的特点。学习了秦九韶算法之后,能使许多复杂的算法简单化,减少计算次数提高计算效率。 本节课的教学重点和难点 重点:秦九韶算法的特点及其程序设计(理解秦九韶算法的思想。) 难点:秦九韶算法的先进性理解及其程序设计(用循环结构表示算法步骤。) 二、学习目标分析 1.知识与技能目标: 了解秦九韶算法的计算过程,秦九韶算法的特点、程序框图和程序语言。并理解利用秦九韶算法可以减少计算次数提高计算效率的实质。 2.过程与方法目标: 模仿秦九韶计算方法,体会古人计算构思的巧妙。了解数学计算转换为计算机计算的途径,从而探究计算机算法与数学算法的区别,体会计算机对数学学习的辅助作用。先从特殊的多项式求值方法体现降幂可以简化计算,然后给出两种一般

的求多项式的值的方法,引导学生探究这两种方法需要的次数,然后引导学生与秦九韶方法比较发现秦九韶方法的优越性,进而引出“秦九韶算法”的概念,然后引导学生探究出蕴含在其中的算法思想,让学生编写算法,画程序框图,写程序语言,并在计算机上验算。在教学过程中教师指导,学生探究,讲练结合。 3.情感,态度和价值观目标 通过对秦九韶算法的学习,了解中国古代数学家对数学的贡献,充分认识到我国文化历史的悠久,同时让学生体验民族数学成就感和荣誉感,培养学生分工合作意识,提高学习数学的热情。 三、学习者特征分析 (1)本节课的授课对象本校高一年普通班学生,学生在逻辑思维、动手推理、分工合作、学习态度等方面存在较大差异,因此在教学过程中要注意分散内容难点、注意激发学生的积极性。 (2)现在的学生计算能力较差,习惯于借助计算器计算,对于算法语言的教学还是比较有兴趣。 四、教学策略与方法分析 1.教学方法:充分发挥学生的主体作用和教师的主导作用,采用启发式,并遵循循序渐进的教学原则。通过从特殊到一般的数学思想,让学生掌握从现象到本质,从已知到未知逐步形成概念的学习方法,有利于发展学生抽象思维能力和逻辑推理能力。 2.教学手段:通过各种教学媒体(计算机)调动学生参与课堂教学的主动性与积极性。 五、教学过程

算法案例---秦九韶算法

§1.3算法案例---秦九韶算法 高二数学组 梅 杰 一.教学目标 1.了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实质; 2.能利用秦九韶算法进行一些多项式的计算,能用循环结构表示算法步骤。 二.教学重难点 1.理解秦九韶算法体现的思想; 2.用循环结构表示算法步骤。 三.教学过程 (一)创设情景,揭示课题 问题1 :请同学们设计一个算法,计算8.07.16.25.324)(2345-+-++=x x x x x x f 当5=x 时的值。 学生可能会提出两种做法: 做法一:把5代入多项式的每一项,计算每一项的值,然后相加; 做法二:先计算x 的幂,可以利用前面的计算结果,以减少计算量,即先计算x 2,然后 依次计算x 2.x,( x 2.x).x,( ( x 2.x).x).x 的值,再各项相加。 结合学生的做法,进行比较点评: ①有哪些优点?哪些不足? ②计算次数各是多少?有哪些计算种类? [做法一有15次乘法运算,5次加法运算;做法二有9次乘法运算,5次加法运算] 对于计算机来说,做一次乘法运算所用时间要比做一次加法要长的多,所以算法好坏的一个重要标志仍然是运算的次数 问题2 :上述问题1还有没有更有效的算法呢? 老师引导学生从因式分解的角度,将多项式变形为: 8.0)7.1)6.2)5.3)24(((()(-+-++=x x x x x x f 思考:从内到外,如果把每一个括号都看成一个常数,那么变形后的式子中有哪些“一次式”?x 的系数依次是什么? 思考:让学生回顾整个计算过程,用此种方法一共进行了多少次乘法、加法运算? 点评:一共进行了5次乘法,5次加法运算,相比较前两种做法,此做法更快、更方便,而且在计算过程中,只与多项式的系数有关。 这种算法就是“秦九韶算法”,在此可以介绍下秦九韶生平。【见附页】 (二)研探新知 问题1:怎样用秦九韶算法求一般的多项式0111)(a x a x a x a x f n n n n ++++=-- 当 x=x 0时的值?

高中数学之算法案例

算法案例(讲义) ➢ 知识点睛 典型算法举例: 1. 辗转相除法 ①方法概述:两数相除,较大数除以较小数,得商和余数,继而较小数除以余数,重复操作,直至除尽,此时除数即为最大公约数. ②原理:在a =bq +r 中,除数b 和余数r 能被同一个数整除,那么被除数a 也能被这个数整除.或者说,除数与余数的最大公约数,就是被除数与除数的最大公约数. 2. 秦九韶算法 把一个n 次多项式改写成如下形式: 1110 12110 2312101210 ()()(())((()))n n n n n n n n n n n n n n n f x a x a x a x a a x a x a x a a x a x a x a x a a x a x a x a x a ----------=++++=++++=+++++==+++++………… …… 记0n v a =,11n n v a x a -=+,…,10n n v v x a -=+. 求多项式的值时,首先计算最内层括号内一次多项式的值,即v 1,然后由内向外逐层计算. 3. 进位制 ①k 进制:若k 是一个大于1的整数,那么以k 为基数的k 进制数可以表示为一串数字连写在一起的形式. 110()n n k a a a a -… 11011000n n n n a a a a N a k a a a k --∈<<<≤(,,…,,,,,…,,) ②进位制数相互转化: k 进制转十进制,计算k 进制数a 的右数第i 位数字i a 与1i k -的乘积1i i a k -⋅,再将其累加,重复操作求和. 十进制数转k 进制数(除k 取余法): 如右图,十进制数化为二进制数, 89=1011001(2). ➢ 精讲精练 1. 用“辗转相除法”求下列数的最大公约数: (1)459和357的最大公约数是____________; 余数2222 2220 12511224489

人教版高中数学必修3第一章算法初步-《1.3算法案例:秦九韶算法》教案

1.3算法案例:秦九韶算法 1、利用秦九韶算法求多项式1153723+-+x x x 在23=x 的值时,在运算中下列哪个值用不到( ) A 、164 B 、3767 C 、86652 D 、85169 2、利用秦九韶算法计算多项式1876543x f(x)23456++++++x x x x x = 当x=4的值的时候,需要做乘法和加法的次数分别为( ) A 、6,6 B 、5,6 C 、5,5 D 、6,5 3、利用秦九韶算法求多项式1352.75.38123)(23456-++-++=x x x x x x x f 在6=x 的值,写出详细步骤。 4、下图的框图是一古代数学家的一个算法的程序框图,它输出的 结果s 表示( ) A 、3210a a a a +++的值 B 、30 0201032x a x a x a a +++的值 C 、30 3202010x 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.4.1算法案例(1)―辗转相除法、更相减损术与秦九韶算(精)

1.4.1 算法案例(1)——辗转相除法、更相减损术与秦九韶算法 目标:理解并掌握辗转相除法、更相减损术与秦九韶算法 一.辗转相除法 实例1.求8251与6105的最大公约数.(辗转相除法思想的应用) 第一步:用较大的数除以较小的数,得. 分析:6105与2146的公约数一定是8251与6105的公约数;反之8251与6105的公约数也一定是6105与2146的公约数。因此, 求8251与6105的最大公约数等同于求6105与2146的最大公约数. 第二步:用较大的数除以较小的数,得. 分析:同理6105与2146的最大公约数等同于2146与1813的最大公约数. 第三步:用较大的数除以较小的数,得. 分析:同理2146与1813的最大公约数等同于1813与333的最大公约数. 第四步:用较大的数除以较小的数,得. 分析:…………. 第五步:用较大的数除以较小的数,得. 分析:…………. 第六步:用较大的数除以较小的数,得. 分析:148与37的最大公约数是37, 所以,8251与6105的最大公约数就是37. 这个问题的解决,应用的就是辗转相除法,反复进行除法运算,直到余数为0,最大公约数也就出来了,反复相除的运算在计算机里我们可以应用循环语句来实现. 实例2.设计一个算法,求两个正整数的最大公约数. 解:问题的算法如下:

第一步:输入. 第二步:计算除以的余数. 第三步:. 第四步:如果,则与的最大公约数为,否则返回第二步. 其相应的程序框图如下: 相应的计算机程序如下: INPUT m, n DO r=m MOD n m=n n=r

LOOP UNTIL r=0 PRINT m END 二.更相减损术 《九章算术》是我们中国古代的数学专著,其中介绍了另一种求两个数的最大公约数的有效方法,即更相减损术. 其具体算法如下: 第一步:任意给定两个正整数,判断它们是否都是偶数。如果是,用2 约简;如果不是,执行第二步. 第二步:用较大的数减去较小的数,接着把所得的差与较小的数比较,并以大数减小数。继续这个操作,直到某一步减数与差相等为止,则这个数或这个数与约简的数的积就是所求的最大公约数. 实例3.用更相减损术求98与63的最大公约数. 98-63=35 63-35=28 35-28=7 28-7=21 21-7=14 14-7=7 所以98与63的最大公约数是7. 三.秦九韶算法 问题的引入: 如何求多项式当时的值. 方法一:一个自然的做法是把5带入多项式,计算各项的值,然后把它们加起来,这时,我们一共做了次乘法运算,次加法运算.

山东省北镇中学高中数学《1.3 算法案例》教案2 新人教A版必修3

山东省北镇中学高中数学《1.3 算法案例》教案2 新人教A版必 修3 导入新课 思路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个一次多项式的值.

高一数学算法案例试题答案及解析

高一数学算法案例试题答案及解析 1.用辗转相除法求得数98与63的最大公约数是____________; 【答案】7 【解析】98=63×1+35,63=35×1+28,35=28×1+7,28=7×4.∴98与63的最大公约数是7.【考点】辗转相除. 2.用秦九韶算法求多项式f(x)=x5+3x4-5x3+7x2-9x+11当x=4时的值为. 【答案】1559 【解析】 ,当x=4时f(x)=1559. 【考点】秦九韶算法. 3.用二分法求方程的近似根的算法中要用哪种算法结构() A.顺序结构B.条件结构C.循环结构D.以上都用 【答案】D 【解析】我们在用二分法求方程的近似根的时候,要反复判断近似根所在的区间,因此要用到循环结构,同时也用到了条件结构和顺序结构。 【考点】算法的基本逻辑结构;二分法。 点评:一般情况下,用循环结构的程序框图,就一定会用条件结构,同时也会用顺序结构。 4.三位七进制的数表示的最大的十进制的数是( ) A.322;B.402;C.342;D.365 【答案】C 【解析】三位七进制的数最大的为666,转化为十进制的数为: ,因此选C。 【考点】进位制。 点评:我们要熟练掌握进制数之间的转化。,特别是十进制和其他进制的转化。属于基础题型。 5.下列各数中最小的数为 ( ) A.B.C.D. 【答案】D 【解析】 , ,, 所以最小的数是. 【考点】排序问题与算法的多样性. 点评:本题考查的知识点是进制之间的转换,根据几进制转化为十进制的方法,是解答本题的关键. 6.利用秦九韶算法计算多项式当时的值,需要做乘法和加法的次数分别为() A.6,6B.5,6C.5,5D.6,5

内蒙古通辽市科尔沁区大林镇高中数学 算法案例-秦九绍算法学案 新人教版必修3

内蒙古通辽市科尔沁区大林镇高中数学 算法案例-秦九绍算法学案 新人教 版必修3 课题:1.3算法案例(2)——秦九韶算法 【学习目标】1.了解秦九韶算法的计算过程,并理解利用秦九韶算法可以减少计算次数提高计算效率的实 质。 2. 通过对秦九韶算法的学习,了解中国古代数学家对数学的贡献,充分认识到我国文化 历史的悠久。 【学习重点】秦九韶算法的特点及其运算过程 【学习难点】理解秦九韶算法的运算原理 【问题导学】 问题1:我们已经学过了多项式的计算,你如何计算多项式 1)(2345+++++=x x x x x x f 当5=x 时的值,并统计所做的计算的种类及计算次数? 阅读课本34—37页,完成下列问题: 问题2:在问题1中,一种方法是把5代入多项式()x f ,计算各项的值,然后把它们加起来。另一种方 法是先计算2x 的值,然后依次计算,2x x ⋅,)(2x x x ⋅⋅x x x x ⋅⋅⋅))((2 的值,即 1)(2 345+++++=x x x x x x f .1)())((2222+++⋅+⋅⋅+⋅⋅⋅=x x x x x x x x x x x 试比较用这两种方法计算多项式()x f 当5=x 时的值时分别需要的计算种类及次数。 问题3:对于问题1中的多项式,我们可以用第三种方法计算。 把多项式变形为: 1)(2345+++++=x x x x x x f 1)1)1)1)1((((+++++=x x x x x 你统计一下计算当5=x 时的值时需要的计算次数。

问题4:已知一个5次多项式为 ,5.07.16.25.324)(2 345-+-++=x x x x x x f 试分别用上述三种方法求这个多项式当5=x 时的值,并统计它们进行的乘法和加法运算的次数。 注意:从上述三种方法中,你可以发现第三种方法乘法的运算次数更少了,对于计算机来说,这意味着运算效率提高了,这种方法就叫秦九韶算法。 问题5:你能利用秦九韶算法计算5次多项式 0122334455)(a x a x a x a x a x a x f +++++= 当0x x =时的值吗?至多需要多少次乘法运算和多少次加法运算?写出运算过程。 注意:秦九韶算法的数学模型是:从第二步开始,计算每一步都要用到前一步的值,这里用到一个递推公式。这一过程在算法中可用循环结构来表示。求5次多项式的值就转化为求5个一次多项式的值。 问题6:利用秦九韶算法求n 次多项式 0111)(a x a x a x a x f n n n n ++++=--Λ 当0x x =时的值,至多需要多少次乘法运算和多少次加法运算?试写出算法分析,程序框图和程序。

中国古代算法案例

《中国古代算法案例》 【内容分析】 本节课的主要内容是中国古代算法案例——更相减损术和秦九韶算法,位于《普通高中新课程标准实验教科书·数学》人教A版必修三第一章第三节,是在学生明确了算法的概念、程序框图、基本逻辑结构、基本算法语句等内容的基础上学习的,意在让学生了解中国古代数学的算法思想以及这两个具体的算法,一方面可以进一步理解算法思想、熟练程序框图的画法、练习三种逻辑结构、熟悉程序语言的编写,一方面可以认识到算法是中国古代数学的主要特征,是民族数学的瑰宝,激发学生的民族自豪感. 更相减损术是出自《九章算术》的一种求最大公约数的算法,它原本是为约分而设计的,但它适用于任何需要求最大公约数的情形.学习时,可以与辗转相除法进行比较.秦九韶算法能使复杂的计算简单化,通过减少计算次数,提高计算效率.在教学中,可以结合《九章算术》、秦九韶的生平和他的著作《数书九章》,向学生介绍中国古代数学的特点、成就和对世界数学发展的贡献,增强文化自信. 算法是数学及其应用的重要组成部分,是计算科学的重要基础.现代社会,信息技术飞速发展,算法在科学技术、社会发展中发挥着越来越大的作用,算法思想成为现代人应具备的一种基本数学素养.同时,算法数学也是中国古代数学最大的特点之一,信息时代强调算法思想的重要性无疑能重扬中国数学的优良传统.吴文俊先生在《九章算术与刘徽》一书中说道:“我国传统数学在从问题出发以解决问题为主旨的发展过程中,建立了以构造性与机械化为其特色的算法体系,这与西方数学以欧几里得《几何原本》为代表的所谓公理化演绎体系正好遥遥相对”. 【学情分析】 1.本节课的授课对象为本校高一年级普通班学生,学生在逻辑思维、推理能力、分工合作、学习态度等方面存在较大差异.因此在教学过程中要注意分散内容难点、注意激发学生的积极性. 2.学生在学习过程中,都有这样一种现象——对计算机的好奇心强于对数

相关文档
最新文档