C# Program for Count set bits in an integer (original) (raw)

Last Updated : 14 May, 2025

Write an efficient program to count number of 1s in binary representation of an integer.

**Examples :

Input : n = 6
Output : 2
Binary representation of 6 is 110 and has 2 set bits

Input : n = 13
Output : 3
Binary representation of 11 is 1101 and has 3 set bits

setbit

**1. Simple Method

Loop through all bits in an integer, check if a bit is set and if it is then increment the set bit count. See below program.

C# `

// C# program to Count set // bits in an integer using System;

class GFG { // Function to get no of set // bits in binary representation // of positive integer n static int countSetBits(int n) { int count = 0; while (n > 0) { count += n & 1; n >>= 1; } return count; }

// Driver Code
public static void Main()
{
    int i = 9;
    Console.Write(countSetBits(i));
}

}

// This code is contributed by Sam007

`

**Recursive Approach :

C# `

// C# implementation of recursive // approach to find the number of // set bits in binary representation // of positive integer n using System;

class GFG {

// recursive function
// to count set bits
public static int countSetBits(int n)
{

    // base case
    if (n == 0)
        return 0;

    else

        // if last bit set
        // add 1 else add 0
        return (n & 1) + countSetBits(n >> 1);
}

// Driver code
static public void Main()
{

    // get value
    // from user
    int n = 9;

    // function calling
    Console.WriteLine(countSetBits(n));
}

}

// This code is contributed by aj_36

`

Please refer complete article on

Count set bits in an integer

for more details!

Similar Reads