高一数学(1.3_2秦九邵算法)10.9.14.pptVIP

  1. 1、本文档共20页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
高一数学(1.3_2秦九邵算法)10.9.14

* 1.3 算法案例 第二课时 设计求多项式f(x)=2x5-5x4-4x3+3x2-6x+7当x=5时的值的算法,并写出程序。 一般的解决方案 INPUT “x=”;x x=5; f=2 * x^5 – 5 * x^4 – 4 * x^3 + 3 * x^2 – 6 * x + 7; PRINT f 上述算法一共做了解15次乘法运算,5次加法运算. 优点是简单,易懂; 缺点是不通用,不能解决任意多项式的求值问题,而且计算效率不高。 有没有更高效的算法? 用提取公因式的方法多项式变形为 f(x)= 2x5-5x4-4x3+3x2-6x+7 =x4(2x-5)-4x3+3x2-6x+7 =x3((2x-5)-4)+3x2-6x+7 ………… =((((2x-5)x-4)x+3)x-6)x+7 这样共作了5次加法,5次乘法. 从内到外,如果把每一个括号都看成一个常数,那么变形后的式子中有哪些“一次式”?x的系数依次是什么? 问题提出 1.辗转相除法和更相减损术,是求两个正整数的最大公约数的优秀算法,我们将算法转化为程序后,就可以由计算机来执行运算,实现了古代数学与现代信息技术的完美结合. 2.对于求n次多项式的值,在我国古代数学中有一个优秀算法,即秦九韶算法,我们将对这个算法作些了解和探究. 思考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. 《数书九章》——秦九韶算法 设 是一个n次的多项式 对该多项式按下面的方式进行改写: 这是怎样的一种改写方式?最后的结果是什么? 要求多项式的值,应该先算最内层的一次多项式的值,即 然后,由内到外逐层计算一次多项式的值,即 最后的一项是什么? 这种将求一个n次多项式f(x)的值转化成求n个一次多项式的值的方法,称为秦九韶算法。 这种计算方法,称之为秦九韶方法。直到今天,这种算法仍是世界上多项式求值的最先进的算法。 这种方法的计算量仅为:乘法n次,加法n次. 直接求和法:直接计算P(x)=anxn+an-1xn-1 +…+a1x+a0 的值需要进行n次加法,而乘法需要1+2+3+……+n=n(n+1)/2次。 理论迁移 例1 已知一个5次多项式为 用秦九韶算法求f(5)的值. f(x)=((((5x+2)x+3.5)x-2.6)x+1.7)x-0.8. 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. 所以f(5)= =17255.2. 你从中看到了怎样的规律?怎么用程序框图来描述呢? 开始 输入f (x)的系数: a5 、 a4、 a3、 a2、a1、 a0 输入x n=0 v=a5 v= v·x+a5-n n=n+1 n 5? 输出v 结束 否 是 注意:要想使用检验功能,请使用前,先要减低宏的安全限制 思考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)的值,一共需要多少次乘法运算,多少次加法运算? 思考6:在秦九韶算法中,记v0=an,那么第k步的算式是什么? vk=vk-1x+an-k (k=1,2,…,n) 知识探究(二):秦九韶算法的程序设计 思考1:用秦九韶算法求多项式的值,可以用什么逻辑结构来构造算法?其算法步骤如何设计? 第一步,输入多项式的次数n,最高次 项的系数an和x的值. 第二步,令v=an,i=n-1. 第三步,输入i次项的系数ai. 第四步,v=vx+ai,i=i-1. 第五步,判断i≥0是否成立.若是,则返回第 二步;否则,输出多项式的值v.

文档评论(0)

junjun37473 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档