Поскольку при сдвиге вправо на освобождающиеся позиции устанавливается бит знака, знак числа x можно определить, выполнив сдвиг вправо на всю длину переменной
#include <iostream> using namespace std; int getSign(int x) { int mask; if (x != 0) mask = 1; else mask = 0;
} int main() { int x; cin >> x; cout << getSign(x); return 0; }