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 0 textValue = "" 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 " 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 " End Select ConvertTeensToString = textValue End Function Private Sub Convert() Dim number As Double = CDbl(Me.txtNumber.Text) Dim cents As Integer Dim high As Integer Dim low As Integer Dim lowHundreds As Integer Dim lowTens As Integer Dim lowOnes As Integer Dim highHundreds As Integer Dim highTens As Integer Dim highOnes As Integer cents = CInt(number * 100 Mod 100) low = CInt(number - (cents * (1 / 100))) Mod 1000 high = CInt(number - (cents * (1 / 100))) \ 1000 If number = 1000000 Then lowOnes = CInt(number / 1000000) Me.txtResults.Text = ConvertOnesToString(lowOnes) & "million" ElseIf number > 0 Then Me.txtResults.Text = cents & "/100" If number >= 1 Then lowTens = low \ 10 Mod 10 lowOnes = low Mod 10 If lowTens = 1 Then lowTens = lowTens * 10 + lowOnes Me.txtResults.Text = ConvertTeensToString(lowTens) & "and " & Me.txtResults.Text Else Me.txtResults.Text = ConvertTensToString(lowTens) & ConvertOnesToString(lowOnes) & "and " & Me.txtResults.Text End If If number >= 100 Then lowHundreds = low \ 100 If lowHundreds = 0 Then Me.txtResults.Text = "" & Me.txtResults.Text Else Me.txtResults.Text = ConvertOnesToString(lowHundreds) & "hundred " & Me.txtResults.Text End If If number >= 1000 Then highTens = high \ 10 Mod 10 highOnes = high Mod 10 If highTens = 1 Then highTens = highTens * 10 + highOnes Me.txtResults.Text = ConvertTeensToString(highTens) & "thousand " & Me.txtResults.Text Else Me.txtResults.Text = ConvertTensToString(highTens) & ConvertOnesToString(highOnes) & "thousand " & Me.txtResults.Text End If If number >= 100000 Then highHundreds = high \ 100 Me.txtResults.Text = ConvertOnesToString(highHundreds) & "hundred " & Me.txtResults.Text End If End If End If End If End If End Sub End Class