用牛顿迭代法求下列方程在1.5附近的根:2x3-4x2+3x-6=0。
#include"math.h"main(){floatx,x0,f,f1;x=1.5;do{x0=x;f=2*x0*x0*x0-4*x0*x0+3*x0-6;f1=6*...
#include "math.h"
main()
{float x,x0,f,f1; x=1.5;
do{x0=x;
f=2*x0*x0*x0-4*x0*x0+3*x0-6;
f1=6*x0*x0-8*x0+3;
x=x0-f/f1; }while(fabs(x-x0)>=1e-5);
printf ("%f\n",x); }
想请教下这一步: f1=6*x0*x0-8*x0+3; 是怎么来的 麻烦详细点 谢谢 展开
main()
{float x,x0,f,f1; x=1.5;
do{x0=x;
f=2*x0*x0*x0-4*x0*x0+3*x0-6;
f1=6*x0*x0-8*x0+3;
x=x0-f/f1; }while(fabs(x-x0)>=1e-5);
printf ("%f\n",x); }
想请教下这一步: f1=6*x0*x0-8*x0+3; 是怎么来的 麻烦详细点 谢谢 展开
展开全部
牛顿迭代法的步骤大概是这样的:首先给定一个初始值x0,用它来进行迭代。迭代的方法就是在点(x0,f(x0))处做曲线的切线,与横轴得到一个交点(x1,0),x1就是第一次迭代的结果,也就是方程解的一个近似。要想更靠近实际解就要继续迭代,再在点(x1,f(x1))上做切线,与横轴又会得到一个交点,然后重复这个步骤,直到达到满意的精度为止。你说的这个式子就是对式求导得到的
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这个是函数求导。如:
原函数 y=x^n
他的求导就成了这个了y'=nx^(n-1)
所以其实f1+2*3*x*x-4*2*x+3-6
原函数 y=x^n
他的求导就成了这个了y'=nx^(n-1)
所以其实f1+2*3*x*x-4*2*x+3-6
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |