
求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);
} 展开
#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);
} 展开
展开全部
#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);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询