aboutsummaryrefslogtreecommitdiff
path: root/week03/exercise06.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'week03/exercise06.cpp')
-rw-r--r--week03/exercise06.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/week03/exercise06.cpp b/week03/exercise06.cpp
new file mode 100644
index 0000000..d257e29
--- /dev/null
+++ b/week03/exercise06.cpp
@@ -0,0 +1,23 @@
+#include <iostream>
+
+int main() {
+ int num = 15;
+ char command = '\0';
+ while (true) {
+ std::cin >> command;
+ switch (command) {
+ case 's': std::cin >> num; break;
+ case 'l': num <<= 1; break;
+ case 'r': num >>= 1; break;
+ case 'q': num *= num; break;
+ case 'c': num *= num * num; break;
+ case 'm': num -= 351; break;
+ case 'p': num += 94; break;
+ case '&': return 0;
+ default:
+ std::cout << "Invalid command!" << std::endl;
+ continue;
+ }
+ std::cout << num << std::endl;
+ }
+}