sábado, 8 de junio de 2019

Combinación de Números

Este procedimiento para la realización de Combinaciones de números te permite hacer una permuta de 3 números dando como resultado una combinación de 6 números.

Ej. 748    748, 784, 478, 487, 874, 847



Paso 1:
En el Evento Init agrega lo siguiente:

Public lcEntrada, lcElementos, lcPermutas 
thisform.Caption ="Permutas"
lcentrada=""
lcpermutas=""
lcelementos=""
i=0
SET PROCEDURE TO permuta2

Paso 2:
Agrega la clase controles.vcx a tu formulario

En el texto1 en el evento lostfocus el programa llamará al procedimiento permuta2 el cual hará las posibles combinaciones del número el cual fué introducido en el texto1.

lcEntrada = Alltrim( Transform( lcEntrada ) )
lcElementos = lcEntrada + lcEntrada
lcPermutas = ""
If Len( lcEntrada ) > 4 Or Len( lcEntrada ) < 3
Return
Endif

If Len( lcEntrada ) = 3
lcPermutas = Permuta3( lcEntrada )
Else
For i = 1 To 4
lcPermutas = lcPermutas + Permuta3( Substr( lcElementos, i, 3 ) )
Endfor
Endif

lcPermutas = Left( lcPermutas, Len( lcPermutas ) - 2 )

*Messagebox( lcPermutas )
*
Function Permuta3 ( lcXYZ )

Local Array laElemento[1]
Local i, j, k As Integer, lcPermutas As String

Dimension laElemento[3]

lcPermutas = ""

For i = 1 To 3
laElemento[i] = Substr( lcXYZ, i, 1 )
Endfor

For i = 1 To 3
For j = 1 To 3
For k = 1 To 3
If  laElemento[i] <> laElemento[j] And ;
laElemento[i] <> laElemento[k] And ;
laElemento[j] <> laElemento[k]
lcPermutas = lcPermutas + laElemento[i] + laElemento[j] + laElemento[k] + ", "
Endif
Endfor
Endfor
Endfor

Return ( lcPermutas )







1 comentarios:

  1. Combinación De Números ~ Visual Foxpro >>>>> Download Now

    >>>>> Download Full

    Combinación De Números ~ Visual Foxpro >>>>> Download LINK

    >>>>> Download Now

    Combinación De Números ~ Visual Foxpro >>>>> Download Full

    >>>>> Download LINK Rq

    ResponderEliminar