Hi

Convert Numbers to Words in c#,VB.NET

Private Function GroupToWords(ByVal numm As String) As _
        String
     
        Static multiples_of_thousand() As String = {}

        Dim num As Integer
        num = Convert.ToInt32(numm)
        '  num = Convert.ToInt32(numm)
        If num = 0 Then Return ""


        Dim result As String = ""
        If (slength = 5) Then
            If num > 9999 Then
                digit = num \ 10000
                num = num Mod 10000
                result = multiples_of_ten(digit - 2) & " thousand"
            End If

            If num > 999 Then
                digit = num \ 1000
                num = num Mod 1000
                result &= " and " & one_to_nineteen(digit) & "  thousand"
            End If

            If num > 99 Then
                digit = num \ 100
                num = num Mod 100
                result &= " an " & one_to_nineteen(digit) & " hundred"
            End If
            If num = 0 Then Return result.Trim()
            If num < 20 Then
                result &= "  " & one_to_nineteen(num)
            Else
                digit = num \ 10
                num = num Mod 10
                result &= " and  " & multiples_of_ten(digit - 2)
                If num > 0 Then
                    result &= "  " & one_to_nineteen(num)
                End If
            End If
         
        End If
        If (slength = 4) Then
            If num > 999 Then
                digit = num \ 1000
                num = num Mod 1000
                result = one_to_nineteen(digit) & "  thousand"
            End If

            If num > 99 Then
                digit = num \ 100
                num = num Mod 100
                result &= " an " & one_to_nineteen(digit) & " hundred"
            End If
            If num = 0 Then Return result.Trim()
            If num < 20 Then
                result &= "  " & one_to_nineteen(num)
            Else
                digit = num \ 10
                num = num Mod 10
                result &= " and  " & multiples_of_ten(digit - 2)
                If num > 0 Then
                    result &= "  " & one_to_nineteen(num)
                End If
            End If
         

        End If
        If (slength = 3) Then


            If num > 99 Then
                digit = num \ 100
                num = num Mod 100
                result = one_to_nineteen(digit) & " hundred"
            End If
            If num = 0 Then Return result.Trim()
            If num < 20 Then
                result &= "  " & one_to_nineteen(num)
            Else
                digit = num \ 10
                num = num Mod 10
                result &= " and  " & multiples_of_ten(digit - 2)
                If num > 0 Then
                    result &= "  " & one_to_nineteen(num)
                End If
            End If
         

        End If
        If (slength = 2) Then

            If num = 0 Then Return result.Trim()
            If num < 20 Then
                result = "  " & one_to_nineteen(num)
            Else
                digit = num \ 10
                num = num Mod 10
                result = multiples_of_ten(digit - 2)
                If num > 0 Then
                    result &= "  " & one_to_nineteen(num)
                End If
            End If

        End If
        If (slength = 1) Then

            If num = 0 Then Return result.Trim()
            If num < 20 Then
                result = "  " & one_to_nineteen(num)

            End If
         

        End If
     
        Return result.Trim()
    End Function
Previous
Next Post »

1 comments:

Write comments