How to count the number of 1 bit in a given number with C++

2 Answers

0 votes
#include <iostream>

int Count1Bit(int n) {
    int count = 0;
 
    while (n > 0) {
        count += n & 1;
        n >>= 1;
    }
    return count;
}

int main(void) {
    int n = 95; // 0101 1111
         
    int count = Count1Bit(n);
         
    std::cout << "Number of 1 bit = " << count;
    
    return 0;
}




/*
run:
       
Number of 1 bit = 6
       
*/

 



answered Sep 13, 2021 by avibootz
edited Dec 4, 2021 by avibootz
0 votes
#include <iostream>
 
int Count1Bit(int n) {
    int count = 0;
  
    while (n) {
        n &= (n - 1);
        count++;
    }
    
    return count;
}
 
int main(void) {
    int n = 95; // 0101 1111
          
    int count = Count1Bit(n);
          
    std::cout << "Number of 1 bit = " << count;
     
    return 0;
}
 
 
 
 
/*
run:
        
Number of 1 bit = 6
        
*/

 



answered May 14, 2022 by avibootz

Related questions

2 answers 152 views
1 answer 179 views
1 answer 109 views
1 answer 122 views
1 answer 124 views
...