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 fand 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: "

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter15: Recursion
Section: Chapter Questions
Problem 8SA
icon
Related questions
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 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)<<endl;
cout<< "The integral of f(x)=x^2 between 1 and 5 is: "<<integrate(square, 1, 5)<<endl;
cout<< "The integral of f(x)=x^3 between 1 and 5 is: "<<integrate(cube, 1, 5)<<endl;
}
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.
Transcribed Image Text: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)<<endl; cout<< "The integral of f(x)=x^2 between 1 and 5 is: "<<integrate(square, 1, 5)<<endl; cout<< "The integral of f(x)=x^3 between 1 and 5 is: "<<integrate(cube, 1, 5)<<endl; } 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.
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 3 steps with 3 images

Blurred answer
Knowledge Booster
Fibonacci algorithm
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning