用牛顿迭代法求根。方程为ax^3+bx^2 +cx+d=0,系数a,b,c,d的值依次为1,2,3,4,由主函数输人。求x在1附近的一个实根。求出根后由主函数输出

Posted 张震新

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用牛顿迭代法求根。方程为ax^3+bx^2 +cx+d=0,系数a,b,c,d的值依次为1,2,3,4,由主函数输人。求x在1附近的一个实根。求出根后由主函数输出相关的知识,希望对你有一定的参考价值。

用牛顿迭代法求根。方程为\\(ax^3+bx^2 +cx+d=0\\),系数a,b,c,d的值依次为1,2,3,4,由主函数输人。求x在1附近的一个实根。求出根后由主函数输出。

点我看视频讲解+可运行代码,记得收藏视频,一键三连

题目解析:

此题的难点并不是编程,主要是要理解数学公式的求解方法,理解之后代码的实现并不困难。

代码示例:

#include<stdio.h>
#include<math.h>

float solut(int a, int b, int c, int d)
{
	float x = 1, x0, f, f1;
	do
	{
		x0 = x;
		f = ((a*x0 + b)*x0 + c)*x0 + d;
		f1 = (3 * a*x0 + 2 * b)*x0 + c;
		x = x0 - f / f1;
	} while (fabs(x - x0) >= 1e-3);
	return(x);
}

int main()
{
	int a, b, c, d;
	printf("input a,b,c,d:");
	scanf("%d %d %d %d", &a, &b, &c, &d);
	printf("x=%10.7f\\n", solut(a, b, c, d));
	return 0;
}

运行结果:

用牛顿迭代法求根。方程为ax3+bx2 +cx+d=0,系数a,b,c,d的值依次为1,2,3,4,由主函数输人。求x在1附近的一个实根。求出根后由主函数输出

以上是关于用牛顿迭代法求根。方程为ax^3+bx^2 +cx+d=0,系数a,b,c,d的值依次为1,2,3,4,由主函数输人。求x在1附近的一个实根。求出根后由主函数输出的主要内容,如果未能解决你的问题,请参考以下文章

C语言每日一练——第154天:牛顿迭代法求方程根

编程打卡:C语言趣味编程习题做

NOIP2001 一元三次方程求解[导数+牛顿迭代法]

卡西欧fx-5800P怎么解二元一次方程

hdu 1071 The area定积分

第5-8章总结