All pastes #674346 Raw Edit

Mine

public text v1 · immutable
#674346 ·published 2007-08-29 04:20 UTC
rendered paste body
Option Strict On
Public Class Form2
    Private Sub btnExit_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnExit.Click
        Me.Close()
    End Sub
    Private Sub btnCalculate_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnCalculate.Click
        If IsNumeric(Me.txtNumber.Text) AndAlso CDbl(Me.txtNumber.Text) <= 1000000 Then
            Convert()
            Else
            Me.txtResults.Text = "The text you entered is either not a number or the number was too large!"
        End If
    End Sub
    Private Function ConvertOnesToString(ByVal inputNumber As Integer) As String
        Dim textValue As String = "empty"
        Select Case inputNumber
            Case 1 : textValue = "one "
            Case 2 : textValue = "two "
            Case 3 : textValue = "three "
            Case 4 : textValue = "four "
            Case 5 : textValue = "five "
            Case 6 : textValue = "six "
            Case 7 : textValue = "seven "
            Case 8 : textValue = "eight "
            Case 9 : textValue = "nine "
            Case Else : textValue = ""
        End Select
        ConvertOnesToString = textValue
    End Function
    Private Function ConvertTensToString(ByVal inputNumber As Integer) As String
        Dim textValue As String = "empty"
        Select Case inputNumber
            Case 2 : textValue = "twenty "
            Case 3 : textValue = "thirty "
            Case 4 : textValue = "fourty "
            Case 5 : textValue = "fifty "
            Case 6 : textValue = "sixty "
            Case 7 : textValue = "seventy "
            Case 8 : textValue = "eighty "
            Case 9 : textValue = "ninety "
            Case Else : textValue = ""
        End Select
        ConvertTensToString = textValue
    End Function
    Private Function ConvertTeensToString(ByVal inputNumber As Integer) As String
        Dim textValue As String = "empty"
        Select Case inputNumber
            Case 10 : textValue = "ten "
            Case 11 : textValue = "eleven "
            Case 12 : textValue = "twelve "
            Case 13 : textValue = "thirteen "
            Case 14 : textValue = "fourteen "
            Case 15 : textValue = "fifteen "
            Case 16 : textValue = "sixteen "
            Case 17 : textValue = "seventeen "
            Case 18 : textValue = "eighteen "
            Case 19 : textValue = "nineteen "
            Case Else
        End Select
        ConvertTeensToString = textValue
    End Function
    Private Function BreakDown(ByVal inputNumber As Integer) As String
        Dim result As String = ""
        If inputNumber >= 1 Then
            If (inputNumber \ 10 Mod 10) = 1 Then
                result = ConvertTeensToString(10 + (inputNumber Mod 10))
            ElseIf (inputNumber \ 10 Mod 10) > 1 Then
                result = ConvertTensToString(inputNumber \ 10 Mod 10) & ConvertOnesToString(inputNumber Mod 10)
            Else
                result = ConvertOnesToString(inputNumber Mod 10)
            End If
            If inputNumber >= 100 Then
                result = ConvertOnesToString((inputNumber \ 100)) & "hundred " & result
            End If
        End If
        BreakDown = result
    End Function
    Private Sub Convert()
        Dim number As Double = CDbl(Me.txtNumber.Text)
        Dim cents As Integer = CInt(number * 100 Mod 100)
        Dim high As Integer = CInt(number - (cents * (1 / 100))) \ 1000
        Dim low As Integer = CInt(number - (cents * (1 / 100))) Mod 1000
        If number = 1000000 Then
            low = CInt(number / 1000000)
            Me.txtResults.Text = ConvertOnesToString(low) & "million and " & cents & "/100"
        ElseIf number > 0 Then
            Me.txtResults.Text = BreakDown(low) & "and " & cents & "/100"
            If number >= 1000 Then
                Me.txtResults.Text = BreakDown(high) & "thousand " & Me.txtResults.Text
            End If
        End If
    End Sub
End Class