牛顿 猎奇资源极品狠货 法解 猎奇资源极品狠货 ,C 猎奇资源极品狠货 程序
给你一点提示。
牛顿猎奇资源极品狠货法要计算
(1)
y1=f(x)
在
x
的函数值
(2)
d1=f(x)
的一阶导数
在
x
的值
你可以写两个函数,分别计算y1,d1
如果一阶导数有解析解,则可用赋值语句,否则要写数值解子程序。
步骤:
设解的精度,例
float
eps=0.000001;
设x初值,x1;
算y1=f(x1);
猎奇资源极品狠货循环开始
算一阶导数
在
x1
的值
d1
用牛顿公式
算出
x2;
[x2
=
x1
–
y1
/
d1]
如果
fabs(x2-x1)
eps
则从新猎奇资源极品狠货
—
用新的函数值和一阶导数值推下一个
新x.
91影院
把两个子函数都写主函数里头吧!你这样写a、b、c、d都没有传参,害我找了半天。
#includestdio.h
#includemath.h
int
a,b,c,d;
//a、b、c、d为系数
void
main()
{
int
k=0;
//计数变量
float
X0,X1,f,f1;
int
a,b,c,d;
printf(“提示:函数f(x)=a*x^3+b*x^2+c*x+d\n”);
printf(“请输入系数:a,b,c,d的值:\n”);
scanf(“%d%d%d%d”,a,b,c,d);
printf(“请输入初始近似值X0:\n”);
scanf(“%f”,X1);
printf(“—————\n”);
printf(“敛散情况:\n”);
printf(“k:\tXk:\n”);
printf(“k=%d\tX%d=%f\n”,k,k,X1);
do
{
k++;
X0=X1;
f=((a*X0+b)*X0+c)*X0+d;
f1=(3*a*X0+2*b)*X0+c;
X1=X0-f/f1;
printf(“k=%d\tX%d=%f\n”,k,k,X1);
}
while(fabs(X1-X0)
=0.00001);
printf(“————————–\n”);
printf(“猎奇资源极品狠货的次数为:%d\n”,k);
}
91影院国 产一区二区久久
#include stdio.h
#include math.h
double Resolve( double,double,double,double );
int main()
{
double a,b,c,d=0;
double y;
printf(“input a b c d:”);
scanf(“%lf%lf%lf%lf”, a, b, c, d);
y = Resolve(a,b,c,d);
printf(“output:\n%.4lf\n”, y);
return 0;
}
double f(double a,double b,double c,double d,double x)
{
return a*x*x*x + b*x*x + c*x +d ;
}
double f1(double a,double b,double c,double x)
{
return 3*a*x*x + 2*b*x + c ;
}
double Resolve( double a,double b,double c,double d )
{
double x0,x1,e;
x0=1;
e=f(a,b,c,d,x0);
do {
x1=x0-e/f1(a,b,c,x0) ;
x0=x1;
e=f(a,b,c,d,x0);
}while( e = 1e-5 );
return x1 ;
}