Question: Implementing Numerical Integration Using Function Pointers The problem is to write a function integrate with prototype: //FUNC represents functions of one variable that take a
Implementing Numerical Integration Using Function Pointers
The problem is to write a function integrate with prototype:
//FUNC represents functions of one variable that take a double as input and returns a double typedef double (*FUNC)(double);
double integrate(FUNC f, double a, double b);
so that when it is passed a function f and bounds a and b, the call:
integrate(f, a,b) will return the value of the definite integral of f evaluated between a and b.
test integrate on the following three functions:
1.double line(double x){
return x; {
2.double square(double x){
return x*x; {
3.double cube(double x){
return x*x*x; {
And the following main function:
int main(){
cout<< The integral of f(x)=x between 1 and 5 is: << integrate(line, 1, 5)< cout<< The integral of f(x)=x^2 between 1 and 5 is: < cout<< The integral of f(x)=x^3 between 1 and 5 is: < } How does integrate work? Inside a loop we sum up the area of rectangles with a small base (say .0001) and height f(x) for each x between a and b in increments of .0001. When the loop terminates, we return the value of the sum. The purpose if this assignment is to see (and implement) a very simple application of function pointers.
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
