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

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!