Match mask with bit operator : Operator « Language « C++






Match mask with bit operator

  
#include <iostream>
using namespace std;
int mystery( unsigned );

int main()
{
   unsigned x;

   cout << "Enter an integer: ";
   cin >> x;
   cout << "The result is " << mystery( x ) << endl;
   return 0;
}

int mystery( unsigned bits )
{
   unsigned mask = 1 << 15, total = 0;

   for ( int i = 0; i < 16; i++, bits <<= 1 )
      if ( ( bits & mask ) == mask ) 
         ++total;

   return total % 2 == 0 ? 1 : 0;
}
  
    
  








Related examples in the same category

1.Demonstrate the modulus operator. Demonstrate the modulus operator.
2.Printing an unsigned integer in bits
3.Using the bitwise AND, bitwise inclusive OR, bitwise exclusive OR, and bitwise complement operators.
4.Using the bitwise shift operators
5.using a bit field
6.demonstrates remainder operator
7.Demonstrate the relational and logical operators. Demonstrate the relational and logical operators.
8. Create an XOR using the C++ logical operators.   Create an XOR using the C++ logical operators.
9.Define operator a custom class: =, +Define operator a custom class: =, +
10.Logical Not operator, combined with the logical And operatorLogical Not operator, combined with the logical And operator
11.Logical Or operatorLogical Or operator
12.conditional Operator '?'conditional Operator '?'
13.Dot (.) operator and operator operatorDot (.) operator and operator operator
14.Operator in C++Operator in C++
15.Compound assignmentsCompound assignments
16.arithmetic assignment operators
17.increment operator
18.Demonstrates built-in arithmetic operators