title: Even parity of a unsigned int
body: <pre><code>/*A value has even parity if it has an even number of 1 bits.
   *A value has an odd parity if it has an odd number of 1 bits.
   *For example, 0110 has even parity, and 1110 has odd parity.
   *Return 1 iff x has even parity.
   */
  
  int has_even_parity(unsigned int x) {
  
  }
  </code></pre>
  
  <p>I'm not sure where to begin writing this function, I'm thinking that I loop through the value as an array and apply xor operations on them. 
  Would something like the following work? If not, what is the way to approach this?</p>
  
  <pre><code>int has_even_parity(unsigned int x) {
      int i, result = x[0];
      for (i = 0; i &lt; 3; i++){
          result = result ^ x[i + 1];
      }
      if (result == 0){
          return 1;
      }
      else{
          return 0;
      }
  }
  </code></pre>