📄 二分法.txt
字号:
#include<stdio.h>
#include<math.h>
#define eps 5e-6
#define delta 1e-6
float Bisection(float a,float b,float(*f)(float))
{
float c,fc,fa=(*f)(a),fb=(*f)(b);
int n=1;
printf("二分次数\t\tc\t\tf(c)\n");
while(1)
{
if(fa*fb>0)
{
printf("不能用二分法求解");
break;
}
c=(a+b)/2;
fc=(*f)(c);
if(fabs(fc)<delta) break;
else if(fa*fc<0)
{b=c;
fb=fc;}
else
{a=c;
fa=fc;}
if(b-a<eps) break;
printf("%d\t\t%f\t\t%f\n",n++,c,fc);
}
return c;
}
float f(float x)
{
return x*x*x+x*x-3*x-3;
}
void main()
{
float a=1,b=2;
float x;
x=Bisection(a,b,f);
printf("\n方程的根是:%f",x);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -