Results 1 to 9 of 9

Thread: Integer 2 Binary?

  1. #1

    Thread Starter
    Lively Member Nigorr's Avatar
    Join Date
    Apr 2002
    Location
    Brisbane, Australia
    Posts
    106

    Question Integer 2 Binary?

    How do you convert Integer(23) to Binary(00010111) with VB? Is there a function for this?

  2. #2
    Hyperactive Member Blinky Bill's Avatar
    Join Date
    Mar 2002
    Location
    Happily munching on the greenery in your garden
    Posts
    349
    As far as i know there are no vb functions to do this. What you need to do is write your own function to do it

    Do you know how to?
    We don't know what's wrong. . . So the best bet might be to remove something surgically.

  3. #3

    Thread Starter
    Lively Member Nigorr's Avatar
    Join Date
    Apr 2002
    Location
    Brisbane, Australia
    Posts
    106
    I know how to write a function, but I'm not sure how I would go about it for this one. Help please.

  4. #4
    Frenzied Member HarryW's Avatar
    Join Date
    Jan 2000
    Location
    Heiho no michi
    Posts
    1,827
    Been a while since I wrote any VB code, and the formatting is kinda messed up cos I just wrote this out in notepad, but I think this should do it.

    Code:
    Function int2bin(myInteger as integer) as string
    
    	Dim strBinary as string
    	Dim intTemp as integer
    	strBinary = ""
    	intTemp = myInteger
    	Do 
    		strBinary = str(intTemp Mod 2) & strBinary
    		intTemp = intTemp \ 2
    	
    	Loop until intTemp < 2
    
    	int2bin = strBinary
    
    End Function
    Harry.

    "From one thing, know ten thousand things."

  5. #5

    Thread Starter
    Lively Member Nigorr's Avatar
    Join Date
    Apr 2002
    Location
    Brisbane, Australia
    Posts
    106
    I know how to convert a number to an 8bit binary in my head! Not in code, well that is effeicent

  6. #6

    Thread Starter
    Lively Member Nigorr's Avatar
    Join Date
    Apr 2002
    Location
    Brisbane, Australia
    Posts
    106
    I'll have a go using the remainder method of converting int 2 bin. BTW your code didn't work just returned "0 0 0 0 0"

  7. #7
    Lively Member slx47's Avatar
    Join Date
    Apr 2002
    Location
    US
    Posts
    127

    try this ...

    public function bincovert(number as long)

    public bnumber as string 'actual answer

    if number - 128 > 0 then
    number = number - 128
    bnumber = "1"
    else
    bnumber = "0"
    end if
    if number - 64 > 0 then
    number = number - 64
    bnumber = bnumber & "1"
    else
    bnumber = "0"
    end if
    if number - 32 > 0 then
    number = number - 32
    bnumber = bnumber & "1"
    else
    bnumber = "0"
    end if

    if number - 16 > 0 then
    number = number - 16
    bnumber = bnumber & "1"
    else
    bnumber = "0"
    end if

    if number - 8 > 0 then
    number = number - 8
    bnumber = bnumber & "1"
    else
    bnumber = "0"
    end if

    if number - 4 > 0 then
    number = number - 4
    bnumber = bnumber & "1"
    else
    bnumber = "0"
    end if

    if number - 2 > 0 then
    number = number - 2
    bnumber = bnumber & "1"
    else
    bnumber = "0"
    end if

    if number - 1 > 0 then
    number = number - 1
    bnumber = bnumber & "1"
    else
    bnumber = "0"
    end if

    binconvert = bnumber

    end function

    hopefully this helps

  8. #8

    Thread Starter
    Lively Member Nigorr's Avatar
    Join Date
    Apr 2002
    Location
    Brisbane, Australia
    Posts
    106

    Yep that's it

    Minor modifications, thanks for this.
    VB Code:
    1. Function int2bin(number As Integer)
    2.  
    3.     Dim bnumber As String 'actual answer
    4.  
    5.     If number - 128 >= 0 Then
    6.         number = number - 128
    7.         bnumber = "1"
    8.     Else
    9.         bnumber = "0"
    10.     End If
    11.  
    12.     If number - 64 >= 0 Then
    13.         number = number - 64
    14.         bnumber = bnumber & "1"
    15.     Else
    16.         bnumber = "0"
    17.     End If
    18.  
    19.     If number - 32 >= 0 Then
    20.         number = number - 32
    21.         bnumber = bnumber & "1"
    22.     Else
    23.         bnumber = bnumber & "0"
    24.     End If
    25.  
    26.     If number - 16 >= 0 Then
    27.         number = number - 16
    28.         bnumber = bnumber & "1"
    29.     Else
    30.         bnumber = bnumber & "0"
    31.     End If
    32.  
    33.     If number - 8 >= 0 Then
    34.         number = number - 8
    35.         bnumber = bnumber & "1"
    36.     Else
    37.         bnumber = bnumber & "0"
    38.     End If
    39.  
    40.     If number - 4 >= 0 Then
    41.         number = number - 4
    42.         bnumber = bnumber & "1"
    43.     Else
    44.         bnumber = bnumber & "0"
    45.     End If
    46.  
    47.     If number - 2 >= 0 Then
    48.         number = number - 2
    49.         bnumber = bnumber & "1"
    50.     Else
    51.         bnumber = bnumber & "0"
    52.     End If
    53.  
    54.     If number - 1 >= 0 Then
    55.         number = number - 1
    56.         bnumber = bnumber & "1"
    57.     Else
    58.         bnumber = bnumber & "0"
    59.     End If
    60.  
    61. int2bin = bnumber
    62.  
    63. End Function

  9. #9

    Thread Starter
    Lively Member Nigorr's Avatar
    Join Date
    Apr 2002
    Location
    Brisbane, Australia
    Posts
    106
    This is the program I made
    Attached Files Attached Files

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width