求c语言二分法求一元三次方程的根语句的注释

//二分法求一元三次方程的根#include<stdio.h>#include<math.h>voidmain(){floatx0,x1,x2,fx0,fx1,fx2;d... //二分法求一元三次方程的根
#include<stdio.h>
#include<math.h>
void main()
{
float x0,x1,x2,fx0,fx1,fx2;
do
{
printf("enter x1 & x2:");
scanf("%f,%f",&x1,&x2);
fx1=x1*((2*x1-4)*x1+3)-6;
fx2=x2*((2*x2-4)*x2+3)-6;
}while(fx1*fx2>0);
do
{
x0=(x1+x2)/2;
fx0=x0*((2*x0-4)*x0+3)-6;
if((fx0*fx1)<0)
{
x2=x0;
fx2=fx0;
}
else
{
x1=x0;
fx2=fx0;
}
}while(fabs(fx0)>=1e-5);
printf("x=%6.2f\n",x0);
}
展开
 我来答
听不清啊
高粉答主

2017-12-21 · 说的都是干货,快来关注
知道顶级答主
回答量:7.8万
采纳率:89%
帮助的人:2亿
展开全部
#include<stdio.h>
#include<math.h>
void main()
{
float x0,x1,x2,fx0,fx1,fx2;
do
{
printf("enter x1 & x2:");
scanf("%f,%f",&x1,&x2); //输入在哪个区间寻找方程的根
fx1=x1*((2*x1-4)*x1+3)-6; //计算在两个端点,函数的值
fx2=x2*((2*x2-4)*x2+3)-6;
}while(fx1*fx2>0); //必须要函数在两个端点,函数的值异号,才能保证区间内有根
do
{
x0=(x1+x2)/2; //x0为区间的中点
fx0=x0*((2*x0-4)*x0+3)-6; //中点的函数值
if((fx0*fx1)<0) //将中点修改为函数值与中点函数值同号的端点
{
x2=x0;
fx2=fx0;
}
else
{
x1=x0;
fx2=fx0;
}
}while(fabs(fx0)>=1e-5); //直到中点的函数值与0足够接近
printf("x=%6.2f\n",x0);
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式