编写用牛顿迭代法求方程的根。方程ax3+bx2+cx+d=0,系数a,b,c,d由主函数输出。求x在1附近的一个 实根,由主函数输出。牛顿的迭代法公式是:x = x0-f(x0)/f’(x0)

/*编写用牛顿迭代法求方程的根。方程ax3+bx2+cx+d=0,系数a,b,c,d由主函数输出。求x在1附近的一个
实根,由主函数输出。牛顿的迭代法公式是:x = x0-f(x0)/f’(x0) */

#include <STDIO.H>
#include <MATH.H>

float fun(double a,double b,double c,double d)
{
	float x0 = 2.0;
	float x;
	
	x = x0 - ((a * pow(x0,3) + b * pow(x0,2) + c * x0 + d)/(a * pow(x0,3) + b * pow(x0,2) + c * x0 + d));

	return x;
}

int main()
{
	float a,b,c,d;

	printf("请输入abcd的值:\n");

	scanf("%f %f %f %f",&a,&b,&c,&d);

	
	printf("%f",fun(a,b,c,d));
}

谭浩强C程序设计(第四版)p218第12题

发布了87 篇原创文章 · 获赞 9 · 访问量 8572

猜你喜欢

转载自blog.csdn.net/qq_40834200/article/details/105198289