aboutsummaryrefslogtreecommitdiff
path: root/week03/exercise06.cpp
blob: d257e29e3b55d78f2414a692257320e33cbb8fea (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
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;
	}
}