用C语言编写程序,用牛顿迭代法求高次方程f(x)=5*x*x*x*x*x-8*x*x*x+10*x*x-7x+25=0的近似根?急用!

zhkehui
2011-10-16 · 超过10用户采纳过TA的回答
知道答主
回答量:23
采纳率:0%
帮助的人:34.4万
展开全部
牛顿迭代法的思想是这样的:
x和x0不断的迭代.
令f(x)=5*x^5-8x^3+10x^2-7*x+25
则f'(x)=25x^4-24x^2+20x-7
有:
x=x0-f(x)/f'(x)
收敛于:|x-x0|<e(有是一个很小的数,在这里取e为0.000001),具体代码如下:
#include "stdio.h"
#include "math.h"
/*牛顿迭代法求根*/
void main()
{
double x0,x;
double f,g;
x0=1; /*给一个初始值*/
do
{
x=x0;
f=5*pow(x,5)-8*pow(x,3)+10*x*x-7*x+25;
g=25*pow(x,4)-24*pow(x,3)+20*x-7;
x0=x-f/g;
}while(fabs(x-x0)>1e-6);
printf("%f\n",x);
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式