/*
Enter x and y: q e
Not number, please retry again.
Enter x and y: 2.5 10.4
2.5 + 10.4 = 12.9
2.5 * 10.4 = 26
Enter x and y: 11.33 45.12
11.33 + 45.12 = 56.45
11.33 * 45.12 = 511.21
Enter x and y: 10.2232 6.43
10.2232 + 6.43 = 16.6532
10.2232 * 6.43 = 65.7352
Enter x and y: 123.123 321.321
123.123 + 321.321 = 444.444
123.123 * 321.321 = 39562
*/
#include <iostream>
using namespace std;
double add(double, double);
double mult(double, double);
double calculate(double, double, double (*pf)(double, double));
int main() {
double x, y;
const int Size = ;
int i = ;
while (i < Size) {
cout << "Enter x and y: ";
if(! (cin >> x)) {
cin.clear();
while (cin.get() != '\n')
;
cout << "Not number, please retry again.\n";
continue;
}
if (! (cin >> y)) {
cin.clear();
while (cin.get() != '\n')
;
cout << "Not number, please retry again.\n";
continue;
}
i++;
double q = calculate(x, y, add);
cout << x << " + " << y << " = " << q << "\n";
q = calculate(x, y, mult);
cout << x << " * " << y << " = " << q << "\n";
}
}
double add(double x, double y) {
return x + y;
}
double mult(double x, double y) {
return x * y;
}
double calculate(double a, double b, double (*pf)(double a, double b)) {
return (*pf)(a, b);
}