Skip to content

Instantly share code, notes, and snippets.

@Dentrax
Last active March 22, 2019 11:43
Show Gist options
  • Save Dentrax/61936335f4184ef70d1c336969458ae1 to your computer and use it in GitHub Desktop.
Save Dentrax/61936335f4184ef70d1c336969458ae1 to your computer and use it in GitHub Desktop.
// Integer Playground
// Furkan
#include <iostream>
#include <string>
#include <climits>
#include <typeinfo>
using namespace std;
int main()
{
cout << "Brainstorm is starting..." << endl << endl;
cout << "INT_MIN (Tmin) = " << INT_MIN << endl;
cout << "INT_MAX (Tmax) = " << INT_MAX << endl;
cout << "FALSE = 0" << endl;
cout << "TRUE = 1" << endl << endl;
cout << "-----MIDTERM-----" << endl;
cout << "((-(-17) ^ (-1)) >> 2)\t= " << ((-(-17) ^ (-1)) >> 2) << endl;
cout << "(-(-17) ^ (-1) >> 2)\t= " << (-(-17) ^ (-1) >> 2) << endl;
cout << "(((unsigned) 0x21) << 1) & 0x4f)\t= " << ((((unsigned) 0x21) << 1) & 0x4f) << endl << endl;
cout << "((unsigned)((int)0xfffffffd + 2))\t= " << ((unsigned)((int)0xfffffffd + 2)) << endl;
cout << "(0xfffffffd + (int)2)\t= " << (0xfffffffd + (int)2) << endl;
cout << "((unsigned long)0xfffffffd + 2)\t= " << ((unsigned long)0xfffffffd + 2) << endl << endl;
cout << "(!(0x16 & 0x0f))\t= " << (!(0x16 & 0x0f)) << endl;
cout << "(!(0x16 & 0x1f))\t= " << (!(0x16 & 0x1f)) << endl;
cout << "(0x16 & 0x0f)\t= " << (0x16 & 0x0f) << endl;
cout << "(0x16 | 0x1f)\t= " << (0x16 | 0x1f) << endl << endl;
cout << "-----BASIC-----" << endl;
cout << "(~0 >> 1)\t= " << (~0 >> 1) << endl;
cout << "(~0 >> 2)\t= " << (~0 >> 2) << endl;
cout << "(~0U >> 1)\t= " << (~0U >> 1) << endl;
cout << "(~0U >> 2)\t= " << (~0U >> 2) << endl;
cout << "(~0 << 1)\t= " << (~0 << 1) << endl;
cout << "(~0 << 2)\t= " << (~0 << 2) << endl;
cout << "(~0U << 1)\t= " << (~0U << 1) << endl;
cout << "(~0U << 2)\t= " << (~0U << 2) << endl;
cout << "(0 == 0U)\t= " << (0 == 0U) << endl;
cout << "(1 < 0)\t= " << (1 < 0) << endl;
cout << "(-1 > -2)\t= " << (-1 > -2) << endl;
cout << "(-1 < 0U)\t= " << (-1 > 0U) << endl;
cout << "((unsigned)-1 > -2)\t= " << ((unsigned)-1 > -2) << endl << endl;
cout << "-----MIN_MAX-----" << endl;
cout << "(INT_MAX > INT_MIN)\t= " << (INT_MAX > INT_MIN) << endl;
cout << "((unsigned)INT_MAX < INT_MIN)\t= " << ((unsigned)INT_MAX < INT_MIN) << endl;
cout << "(INT_MAX < (unsigned)(INT_MAX + 1))\t= " << (INT_MAX < (unsigned)(INT_MAX + 1)) << endl;
cout << "(INT_MAX > (int)(unsigned)(INT_MAX + 1))\t= " << (INT_MAX > (int)(unsigned)(INT_MAX + 1)) << endl << endl;
cout << "-----OPERATOR-----" << endl;
cout << "(-INT_MIN)\t= " << (-INT_MIN) << endl;
cout << "(-(-INT_MIN))\t= " << (-(-INT_MIN)) << endl;
cout << "(-INT_MAX)\t= " << (-INT_MAX) << endl;
cout << "(-(-INT_MAX))\t= " << (-(-INT_MAX)) << endl;
cout << "(INT_MIN + INT_MIN)\t= " << (INT_MIN + INT_MIN) << endl;
cout << "(INT_MIN + INT_MIN + INT_MIN)\t= " << (INT_MIN + INT_MIN + INT_MIN) << endl;
cout << "(INT_MIN - INT_MIN)\t= " << (INT_MIN + INT_MIN) << endl;
cout << "(INT_MIN - INT_MIN - INT_MIN)\t= " << (INT_MIN + INT_MIN + INT_MIN) << endl;
cout << "(INT_MAX + INT_MAX)\t= " << (INT_MAX + INT_MAX) << endl;
cout << "(INT_MAX + INT_MAX + INT_MAX)\t= " << (INT_MAX + INT_MAX + INT_MAX) << endl;
cout << "(INT_MAX - INT_MAX)\t= " << (INT_MAX + INT_MAX) << endl;
cout << "(INT_MAX - INT_MAX - INT_MAX)\t= " << (INT_MAX + INT_MAX + INT_MAX) << endl << endl;
cout << "-----NOT-----" << endl;
cout << "(~INT_MIN)\t= " << (~INT_MIN) << endl;
cout << "(-(~INT_MIN))\t= " << (-(~INT_MIN)) << endl;
cout << "(~INT_MAX)\t= " << (~INT_MAX) << endl;
cout << "(-(~INT_MAX))\t= " << (-(~INT_MAX)) << endl << endl;
cout << "-----XOR-----" << endl;
cout << "(INT_MIN ^ INT_MIN)\t= " << (INT_MIN ^ INT_MIN) << endl;
cout << "(-INT_MIN ^ INT_MIN)\t= " << (-INT_MIN ^ INT_MIN) << endl;
cout << "(-INT_MIN ^ -INT_MIN)\t= " << (-INT_MIN ^ -INT_MIN) << endl;
cout << "(INT_MAX ^ INT_MAX)\t= " << (INT_MAX ^ INT_MAX) << endl;
cout << "(-INT_MAX ^ INT_MAX)\t= " << (-INT_MAX ^ INT_MAX) << endl;
cout << "(-INT_MAX ^ -INT_MAX)\t= " << (-INT_MAX ^ -INT_MAX) << endl;
cout << "(INT_MIN ^ -1)\t= " << (INT_MIN ^ -1) << endl;
cout << "(INT_MAX ^ -1)\t= " << (INT_MAX ^ -1) << endl;
cout << "(INT_MIN ^ -1U)\t= " << (INT_MIN ^ -1U) << endl;
cout << "(INT_MAX ^ -1U)\t= " << (INT_MAX ^ -1U) << endl << endl;
cout << "-----SHIFT-----" << endl;
cout << "(INT_MIN >> 1)\t= " << (INT_MIN >> 1) << endl;
cout << "(INT_MIN >> 2)\t= " << (INT_MIN >> 2) << endl;
cout << "(INT_MIN << 1)\t= " << (INT_MIN << 1) << endl;
cout << "(INT_MIN << 2)\t= " << (INT_MIN << 2) << endl;
cout << "(~INT_MIN >> 1)\t= " << (~INT_MIN >> 1) << endl;
cout << "(~INT_MIN >> 2)\t= " << (~INT_MIN >> 2) << endl;
cout << "(~INT_MIN << 1)\t= " << (~INT_MAX << 1) << endl;
cout << "(~INT_MIN << 2)\t= " << (~INT_MAX << 2) << endl;
cout << "(INT_MAX >> 1)\t= " << (INT_MAX >> 1) << endl;
cout << "(INT_MAX >> 2)\t= " << (INT_MAX >> 2) << endl;
cout << "(INT_MAX << 1)\t= " << (INT_MAX << 1) << endl;
cout << "(INT_MAX << 2)\t= " << (INT_MAX << 2) << endl;
cout << "(~INT_MAX >> 1)\t= " << (~INT_MAX >> 1) << endl;
cout << "(~INT_MAX >> 2)\t= " << (~INT_MAX >> 2) << endl;
cout << "(~INT_MAX << 1)\t= " << (~INT_MAX << 1) << endl;
cout << "(~INT_MAX << 2)\t= " << (~INT_MAX << 2) << endl << endl;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment