Welcome to collectivesolver - Programming & Software Q&A. A website you can trust. All programs tested and works. Contact: aviboots(AT)netvision.net.il
Bonsai Boy of New York Bonsai Trees and Accessories

BlueHost Web Hosting

Liquid Web iThemes WordPress Hosting

Ecommerce Software - Best Ecommerce Platform Made for You - Free Trial

DreamHost Web Hosting


Ecommerce Software - Best Ecommerce Platform Made for You - Free Trial

Liquid Web Cloud VPS Hosting

10,567 questions

14,363 answers

573 users

How to check if a number has same number of set and unset bits in VB.NET

1 Answer

0 votes
Imports System
  
Public Class Test
    Public Shared Function check_same_set_and_unset_bits(n as integer)
        Dim _set As Integer = 0
        Dim _unset As Integer = 0
    
        Do While n <> 0
            If (n And 1) = 1 Then  
                _set += 1
            else
                _unset += 1 
            End If
            n = n >> 1
        Loop 

        if _set = _unset Then 
            return true
        End If
          
        return false
    End Function
      
    Public Shared Sub Main()
        Dim n as Integer = 178
          
        Console.WriteLine(Convert.ToString(n, 2).PadLeft(8, "0"C))

        If check_same_set_and_unset_bits(n) Then
            Console.WriteLine("Yes")
        else
            Console.WriteLine("No")
        End If
        
        n = 179
          
        Console.WriteLine(Convert.ToString(n, 2).PadLeft(8, "0"C))

        If check_same_set_and_unset_bits(n) Then
            Console.WriteLine("Yes")
        else
            Console.WriteLine("No")
        End If
 
    End Sub
End Class
  
  
'run:
  
' 10110010
' Yes
' 10110011
' No

 




answered Mar 11 by avibootz
...