#include <iostream>
using namespace std;
int main() {
int a, b;
int choice;
cout << "Enter two integers: ";
cin >> a >> b;
cout << "Choose operator category:\n";
cout << "1. Arithmetic\n";
cout << "2. Relational\n";
cout << "3. Logical\n";
cout << "4. Bitwise\n";
cout << "5. Assignment\n";
cout << "Enter choice (1-5): ";
cin >> choice;
cout << "\n--- Results ---\n";
switch(choice) {
case 1: // Arithmetic
cout << "a + b = " << (a + b) << endl;
cout << "a - b = " << (a - b) << endl;
cout << "a * b = " << (a * b) << endl;
if(b != 0) {
cout << "a / b = " << (a / b) << endl;
cout << "a % b = " << (a % b) << endl;
} else {
cout << "Division/Modulo not possible (b=0)" << endl;
}
break;
case 2: // Relational
cout << "a == b : " << (a == b) << endl;
cout << "a != b : " << (a != b) << endl;
cout << "a > b : " << (a > b) << endl;
cout << "a < b : " << (a < b) << endl;
cout << "a >= b : " << (a >= b) << endl;
cout << "a <= b : " << (a <= b) << endl;
break;
case 3: // Logical
cout << "(a && b) : " << (a && b) << endl;
cout << "(a || b) : " << (a || b) << endl;
cout << "!(a) : " << (!a) << endl;
cout << "!(b) : " << (!b) << endl;
break;
case 4: // Bitwise
cout << "a & b = " << (a & b) << endl;
cout << "a | b = " << (a | b) << endl;
cout << "a ^ b = " << (a ^ b) << endl;
cout << "~a = " << (~a) << endl;
cout << "~b = " << (~b) << endl;
cout << "a << 1 = " << (a << 1) << endl;
cout << "b >> 1 = " << (b >> 1) << endl;
break;
case 5: // Assignment
{
int x = a;
cout << "x = a → " << x << endl;
x += b; cout << "x += b → " << x << endl;
x -= b; cout << "x -= b → " << x << endl;
x *= b; cout << "x *= b → " << x << endl;
if(b != 0) {
x /= b; cout << "x /= b → " << x << endl;
x %= b; cout << "x %= b → " << x << endl;
}
}
break;
default:
cout << "Invalid choice!" << endl;
}
return 0;
}