(2) // function interface double myexp(double x, double eps) (3) // function definition double myexp(double x, double eps) { int n=0; // iteration number double member = 1; // current member - x^n/n! double sum = 0; // current value of the series // main approximation loop while (fabs(member) >= eps) { n = n + 1; sum = sum + member; member = (member*x)/n } return sum; } (4) // C++ code to test myexp #include using namespace std; #include // function prototype double myexp(double, double); int main() { // variable declarations double argument; // argument double error; // truncation error (value of the least significant series member) cout << "This program calculates function e^x - please enter argument value x = "; cin >> argument; cout << endl; cout << "Please enter truncation error eps = "; cin >> error; cout << endl; // output results cout << "The approximate value of e^x is " << myexp(argument,error) << endl; return 0; } // end main()