Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Function ConverteParaOrdinal(ByVal numero As Decimal) As String
- Dim numeroInteiro As Integer = Decimal.ToInt32(numero)
- Dim numeroComoTexto As String = ""
- If numeroInteiro >= 1 AndAlso numeroInteiro <= 1000 Then
- Dim unidades() As String = {"", "Primeiro", "Segundo", "Terceiro", "Quarto", "Quinto", "Sexto", "Sétimo", "Oitavo", "Nono"}
- Dim dezenas() As String = {"", "Décimo", "Vigésimo", "Trigésimo", "Quadragésimo", "Quinquagésimo", "Sexagésimo", "Septuagésimo", "Octogésimo", "Nonagésimo"}
- Dim centenas() As String = {"", "Centésimo", "Ducentésimo", "Trecentésimo", "Quatrocentésimo", "Quingentésimo", "Sexcentésimo", "Septingentésimo", "Octingentésimo", "Noningentésimo"}
- If numeroInteiro >= 1 AndAlso numeroInteiro <= 9 Then
- numeroComoTexto = unidades(numeroInteiro)
- ElseIf numeroInteiro >= 10 AndAlso numeroInteiro <= 99 Then
- Dim unidade As Integer = numeroInteiro Mod 10
- Dim dezena As Integer = numeroInteiro \ 10
- numeroComoTexto = dezenas(dezena)
- If unidade > 0 Then
- numeroComoTexto &= " " & unidades(unidade).ToLower
- End If
- ElseIf numeroInteiro >= 100 AndAlso numeroInteiro <= 999 Then
- Dim centena As Integer = numeroInteiro \ 100
- Dim dezena As Integer = (numeroInteiro Mod 100) \ 10
- Dim unidade As Integer = numeroInteiro Mod 10
- numeroComoTexto = centenas(centena)
- If dezena > 0 Then
- numeroComoTexto &= " " & dezenas(dezena).ToLower
- End If
- If unidade > 0 Then
- numeroComoTexto &= " " & unidades(unidade).ToLower
- End If
- ElseIf numeroInteiro = 1000 Then
- numeroComoTexto = "Milésimo"
- End If
- Return numeroComoTexto
- Else
- Return -1
- End If
- End Function
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement