fork(1) download
  1. #include <iostream>
  2. #include <string>
  3. #include <vector>
  4. #include <map>
  5. #include <functional>
  6. using namespace std;
  7.  
  8. int main() {
  9. vector<double> results;
  10. map<string, function<double(double, double)>> functions = {
  11. {"+", [](double a, double b)->double{return a+b;}},
  12. {"-", [](double a, double b)->double{return a-b;}},
  13. {"*", [](double a, double b)->double{return a*b;}},
  14. {"/", [](double a, double b)->double{return a/b;}}
  15. };
  16. string in_function;
  17. double a, b;
  18. while(cin>>a>>in_function>>b)
  19. results.push_back(functions[in_function](a, b));
  20.  
  21. for(auto result : results)
  22. cout << result << " ";
  23. return 0;
  24. }
Success #stdin #stdout 0s 3484KB
stdin
10 * 10 20 - 10 30 - 8 52 / 2
stdout
100 10 22 26