首页 牛顿迭代法求方程的根

牛顿迭代法求方程的根

举报
开通vip

牛顿迭代法求方程的根 牛顿迭代法 牛顿迭代法又称牛顿切线法,它采用以下方法求根:先任意设定一个与真实的根接近的值x0作为第一个近似根,由x0求出f(x0),过(x0,f(x0))点做f(x)的切线,交x轴于x1,把它作为第二次近似根,再由x1求出f(x1),再过(x1,f(x1))点做f(x)的切线,交x轴于x2,再求出f(x2),再作切线……如此继续下去,直到足够接近真正的x为止。 其中f'(X0)是函数在X0处的斜率,也就是在X0处的导数。 代码如下: #include #include float f(float ...

牛顿迭代法求方程的根
牛顿迭代法 牛顿迭代法又称牛顿切线法,它采用以下方法求根:先任意设定一个与真实的根接近的值x0作为第一个近似根,由x0求出f(x0),过(x0,f(x0))点做f(x)的切线,交x轴于x1,把它作为第二次近似根,再由x1求出f(x1),再过(x1,f(x1))点做f(x)的切线,交x轴于x2,再求出f(x2),再作切线……如此继续下去,直到足够接近真正的x为止。 其中f'(X0)是函数在X0处的斜率,也就是在X0处的导数。 代码如下: #include #include float f(float a,float b,float c,float d,float x) { float f; f=((a*x+b)*x+c)*x+d; return f; } float f1(float a,float b,float c,float x) { float f; f=(x*3*a+2*b)*x+c; return f; } float root(float a,float b,float c,float d) { float x0,x1=1; do { x0=x1; x1=x0-f(a,b,c,d,x0)/f1(a,b,c,x0); }while(fabs(x1-x0)>=1e-6); return x0; } void main() { float a,b,c,d,x; printf("input four float numbers:\n"); scanf("%f%f%f%f",&a,&b,&c,&d); x=root(a,b,c,d); printf("%.1fX^3+%.1fX^2+%.1fX+%.1f=0 its root near x=1.5 is :%.4f\n",a,b,c,d,x); getch(); }
本文档为【牛顿迭代法求方程的根】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_310329
暂无简介~
格式:doc
大小:25KB
软件:Word
页数:2
分类:其他高等教育
上传时间:2012-04-28
浏览量:53