Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - birik

#1
Hola a todos!

Me ha surgido la necesidad den mi programa de convertir un numero sea el que sea a una cadena alfabética. es decir
1->a
2->b
.
.
.
555123->asakdads-> o la que le corresponda (he puesto un numero al azar)

Y la verdad es que llevo horas dándole duro a la función y no consigo nada bueno, lo único que e conseguido ahora es que genere bien hasta la ZZ, ya que cuando pasa a AAA solo avanza la primera y última letra, es decir nunca cambia la de en medio, ademas de que nunca pasa de esas 3 letras.

Os pongo lo que tengo por si podéis ayudarme o indicarme un poco por donde tirar

Saludos y gracias

  Private Function prueba(ByVal num As Integer) As String
        Dim listaLetrasArray As String() = {"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"}

        If (num > 25) Then

            Dim numeroentero As Integer = (num \ 26) - 1
            If (numeroentero > 25) Then
                Dim chi As Integer = numeroentero \ 26
                chi = numeroentero / 26
                numeroentero = numeroentero - (26 * (numeroentero \ 26))
                num = num - (26 * ((num \ 26) - 1))
            Else
                num = num - (26 * (num \ 26))
            End If

            Return listaLetrasArray(numeroentero) & prueba(num)
        Else

            Return listaLetrasArray(num)

        End If

    End Function