#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 = 4;
int i = 0;
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);
}