函数指针
#include<iostream>
#include<math.h>
double funct(double x) {return 2.0*x;}
double get_root(double (*f)(double), double a, double b, double epsilon);
//double (*f)(double) *f===>f is a pointer, then (double) declares that f is a pointer point a function, which parameter is a double and return a double
//double *f(double) f(double)===>f is a function with a double parameter and return a double value;
int main()
{
return 0;
}
double get_root(double (*f)(double), double a, double b, double epsilon)
{
double middle = (a + b) / 2;
while (f(middle) != 0 && fabs(b -a) > epsilon)
{
if(f(a) * f(middle)<0)
b = middle;
else
a = middle;
middle = (a + b) / 2;
}
return middle;
}