网站大量收购独家精品文档,联系QQ:2885784924

C语言源代码-如何用C程序解一元三次方程根.pdf

C语言源代码-如何用C程序解一元三次方程根.pdf

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
用C 程序解一元三次方程的根 1 2 朱超武 赵青波 (三门峡职业技术学院公共教学部 河南三门峡市 472000 ) 摘要:本文介绍了高等数学的近似计算方法中切线法和二分法的思想,再利用其思想结合C 程序设计语言,编写出了求一元三次方程根的程序,该程序稍加修改,即可成为求更高次方 程根的程序。 关键词:二分法;切线法;方程求根 0 在数学中,一元三次方程ax3 +bx2 +cx +d 0(a =≠0) 至少有一个实 根,虽有公式求解,但既要开平方,又要开立方,且计算尤其复杂。 由于f (x ) ax 3 =+bx 2 +cx +d 0 是连续且二阶可导函数,我们若利用近似 计算中的切线法或二分法[1] ,再利用C 程序设计编程求解,此方程的 根就好求了。 1 先来看用二分法求解,二分法的基本思想是利用中间值定理, 即对于实系数一元n 此方程f(x)=0,如果ab 时,则有f (a )f (b ) 0, 在 区间(a,b )中,至少有方程f(x)=0 的一个根存在[2] .具体做法是:先 输入范围x a, x b 的值,再求出f (x )和f (x ),若f (x )f (x ) 0, 则重新 1 2 1 2 1 2 输入x 、x 的值,直到f (x )f (x ) 0 为止.然后求出x 和x 的中点 1 2 1 2 1 2 x +x x0 1 2 及f (x 0 ). 若f (x 0 ) 0, 则x0 即为方程的根,否则此时要判断 2 f (x )f (x ) 的符号:若f (x )f (x ) 0, 则方程的根应在[x ,x ] 中,用x 代 1 0 1 0 1 0 0 替x ,f (x ) 代替f (x ) ;若f (x )f (x ) 0, 则方程的根应在[x ,x ] 中,用 2 0 2 1 0 0 2 x 代替x , f (x ) 代替f (x ) .在新的区间[x ,x ] 中,根的范围已比开始时 0 1 0 1 1 2 缩小了一半,对新的区间[x ,x ] 重复上述过程,由此可得一系列区间: 1 2 [a ,b ],[a ,b ],[a ,b ],L,[a ,b ], 其中后一区间都是前一区间的一半,区间 1 1 2 3 3 3 n n b −a [a ,b ] 的长度为b −a , 当n 足够大时,使得bn −an 足够小,我 n n n n 2n a +b 们即可取x0 n n 作为方程f (x 0 ) 0 的近似根.因为若设c 为方程 2 b −a f (x ) 0 的根,则显然有a ≤c ≤b , a ≤x ≤b , 故x −c ≤b −a 成 0 n n n

文档评论(0)

xuefei111 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档