From a3dd2581ed4847670f81157091016c14ca18803d Mon Sep 17 00:00:00 2001 From: Nguyễn Gia Phong Date: Tue, 14 Jan 2020 18:29:11 +0700 Subject: [usth/MATH2.3] Mathemate Discretely --- usth/MATH2.3/3/dc.cc | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 usth/MATH2.3/3/dc.cc (limited to 'usth/MATH2.3/3/dc.cc') diff --git a/usth/MATH2.3/3/dc.cc b/usth/MATH2.3/3/dc.cc new file mode 100644 index 0000000..b69742a --- /dev/null +++ b/usth/MATH2.3/3/dc.cc @@ -0,0 +1,43 @@ +#include +#include +#include +#include +#include + +using namespace std; + +int +main () +{ + double num, x, y; + string op; + vector v; + + while (cin.peek () != '\n') + { + getline (cin, op, ';'); + stringstream s {op}; + s >> num; + if (s) + { + v.push_back (num); + continue; + } + + y = v.back (); + v.pop_back (); + x = v.back (); + v.pop_back (); + if (op == "^") + v.push_back (pow (x, y)); + else if (op == "+") + v.push_back (x + y); + else if (op == "-") + v.push_back (x - y); + else if (op == "*") + v.push_back (x * y); + else if (op == "/") + v.push_back (x / y); + } + cout << v.back () << endl; +} -- cgit 1.4.1