利用函数完成用牛顿迭代法求根.方程为ax3+bx2+cx+d=0,系数a、b、c、d的值依次为1,2,3,4,
来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/09/29 20:57:34
利用函数完成用牛顿迭代法求根.方程为ax3+bx2+cx+d=0,系数a、b、c、d的值依次为1,2,3,4,
求x在1附近的一个实根
#include
#include
int main()
{
double f1(double x);
double f2(double x);
int a,b,c,d;
double x1,x0=1,e,f,h;
printf("请输入a,b,c,d");
scanf("%d,%d,%d,%d",&a,&b,&c,&d);
do
{
x1=x0;
e=f1(x1);
f=f2(x1);
h=e/f;
x0=x1-h;
}
while(fabs(x1-x0)>=1e-6);
printf("%lf",x0);
return 0;
}
double f1(double x)
{
int a,b,c,d;
return (a*x*x*x+b*x*x+c*x+d);
}
double f2(double x)
{
int a,b,c,d;
return (3*a*x*x+2*b*x+c);
}
为什么我求不到答案呢?
求x在1附近的一个实根
#include
#include
int main()
{
double f1(double x);
double f2(double x);
int a,b,c,d;
double x1,x0=1,e,f,h;
printf("请输入a,b,c,d");
scanf("%d,%d,%d,%d",&a,&b,&c,&d);
do
{
x1=x0;
e=f1(x1);
f=f2(x1);
h=e/f;
x0=x1-h;
}
while(fabs(x1-x0)>=1e-6);
printf("%lf",x0);
return 0;
}
double f1(double x)
{
int a,b,c,d;
return (a*x*x*x+b*x*x+c*x+d);
}
double f2(double x)
{
int a,b,c,d;
return (3*a*x*x+2*b*x+c);
}
为什么我求不到答案呢?
同学,你的a b c是局部变量,它的值只能在main函数里面用
double f1(int a,int b,int c,int d,double x),同理f2.
double f1(int a,int b,int c,int d,double x),同理f2.
利用函数完成用牛顿迭代法求根.方程为ax3+bx2+cx+d=0,系数a、b、c、d的值依次为1,2,3,4,
利用函数完成用牛顿迭代法求根.方程为ax3+bx2+cx+d=0,系数a、b、c、d的值依次为1,2,3,4,有主函数输
牛顿迭代法求根,方程为ax^3+bx^2+cx+d=0的系数a,b,c,d为1 2 3 4求1附近的一个实根
用牛顿迭代法求根.a*x*x*x+b*x*x+c*x+d=0.系数a,b,c,d的值依次为1,2,3,4,由
编写一函数实现用牛顿迭代法求方程ax3+bx2+cx+d=0在x=1附近的一个实根.主函
已知a,b,c,d是不全为0的实数,函数f(x)=bx2+cx+d,g(x)=ax3+bx2+cx+d,方程f(x)=0
f(x)=ax3+bx2+cx+d(a>0)为增函数,则b,c满足的条件是?
求证:关于x的方程ax3+bx2+cx+d=0有一根为1的充要条件是a+b=-(c+d).
f(x)=ax3+bx2+cx+d(a>0)为增函数,则 b2-3ac
求3次方程的根要求:已知有一方程ax3+bx2+cx+d=0,方程系数a,b,c,d由键盘输入(要求a,b,c,d都不能
如果奇函数f(x)=ax3+bx2+cx+d(a,b,c,d∈R)在点(1,f(1))的切线方程为y=x+1,则函数的单
已知三次函数f(x)=ax3+bx2+cx+d (1)当b=3a,c-d=2a时,证明:函数f