What is the output of the following c++ program? double add ( double x, double y
ID: 3585249 • Letter: W
Question
What is the output of the following c++ program?
double add ( double x, double y) (return x+y;)
double sub (doublex, double y) (return x-y;)
double mul (double x, double y) (return x * y;)
double div (double x, double y) (return x/y;)
double f(double(*p) (double, double), int n)
{
double u = 5.0, v=-2.0;
return n * p(u,v);
}
int main( )
{
cout << f(add, 2) <<endl;
cout << f(sub,3) <<endl;
cout << f(mul,1) <<endl;
cout << f(div, -5) << endl;
return 0;
}
Help explain output step by step please
Explanation / Answer
Output:
6
21
-10
12.5
//f(add, 2) => p(u,v) => 5.0+(-2.0) = 3.0
//[p(u,v) * n] = 3.0 * 2 = 6
//f(sub, 3) => p(u,v) => 5.0-(-2.0) = 7.0
//[p(u,v) * n] = 7.0 * 3 = 21
//f(mul, 1) => p(u,v) => 5.0*(-2.0) = -10.0
//[p(u,v) * n] = -10.0 * 1 = -10
//f(div, -5) => p(u,v) => 5.0/(-2.0) = -2.5
//[p(u,v) * n] = -2.5 * -5 = 12.5
Related Questions
drjack9650@gmail.com
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.