- #include "stdio.h"
- #include "math.h"
- #define f(x) (((x+1)*(x-1))*x-1)
- #define e 0.005
- void main()
- {
- float x,a=1,b=1.5, y=f(a);
- int k=0;
- if(y*f(b)>=0)
- {
- printf("\nThe range is error!");
- return;
- }
- else
- do{
- x=(a+b)/2;
- printf("\nx%d=%6.4f",k,x);
- k++;
- if(f(x)==0)
- break;
- if(f(x)*f(a)<0)
- b=x;
- else
- a=x;
- }while(fabs(b-a)>e);
- printf("\nx=%4.2f\n",x);
- }