Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


Tip of the Day
Language: VB7
Expertise: Intermediate
Sep 7, 2002

Dec2Any - Convert a decimal number to any other base

' convert a positive number to any base
' BASE can be in the range 2-36

Function Dec2Any(ByVal number As Long, ByVal base As Short) As String
    Dim index As Integer
    Dim digitValue As Integer
    Dim res As New System.Text.StringBuilder()

    Const digits As String = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"

    ' check base and value
    If number < 0 Then
        Throw New ArgumentException _
            ("The value to be converted must be positive")
    ElseIf base < 2 Or base > 36 Then
        Throw New ArgumentException("Base must be in range 2-36")
    End If

    ' convert to the other base
    Do While number
        digitValue = number Mod base
        number = number \ base
        ' append this digit in front of current result
        res.Insert(0, digits.Chars(digitValue))
    Loop

    Return res.ToString
End Function
Francesco Balena
 
Comment and Contribute

 

 

 

 

 


(Maximum characters: 1200). You have 1200 characters left.

 

 

Sitemap
Thanks for your registration, follow us on our social networks to keep up-to-date