C语言程序。用弦截法求程2x3-4x2+3x-6=0在(0,3)内的近似根,直到|f(x)|<0.0001为止。
#include <stdio.h>
#include <math.h>
int main()
{
float x0,x1,x2,y0,y1,y2;
printf("please input x1,x2:\n");
loop: scanf("%lf %lf",&x1,&x2);
y1=2*pow(x1,3)-4*pow(x1,2)+3*x1-6;
y2=2*pow(x2,3)-4*pow(x2,2)+3*x2-6; if (y1+y2>=y1)
{
printf("请重新输入");
goto loop;
}
else
{
do
{ x0=(x1*y2-x2*y1)/(y2-y1);
y0=2*pow(x0,3)-4*pow(x0,2)+3*x0-6; if(y0*y1>0)
{
x1=x0;
y1=y0;
}
else
{
x2=x0;
y2=y0;
}
}
while(fabs(y0)>1e-4);
printf("%f",x0) ;
}
}
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps: 问答会员【8折】购 ,仅需→23.2元,即可享受5次/月 有问必答服务,了解详情>>>https://t.csdnimg.cn/RW5m