COMBINACOES NUMERICAS

JEANCOELHO 08/01/2010 12:14:18
#331398
Boa tarde galera, preciso desenvolver uma rotina que gere todas as combinações possiveis entre numeros, ex: tenho 18 - 25 - 189 - 32 - 56 - 89 - 23
ai preciso gerar
todas cobinações em pares de 3 numeros

18 - 25 -189
18 - 32 - 56
etc...


qualquer material, dica sugestão será bem vindo!


desde já grato!
LLAIA 08/01/2010 13:39:18
#331410
são combinações ou permutações ?
JEANCOELHO 08/01/2010 18:10:56
#331445
Amigo agora vc me aperto com a pergunta, vou usar um exemplo menor tenho 01 - 02 - 03

ai podemos ter

01 - 02
01 - 03
02 - 03

seria tipo eu tenho 20 numeros aleatorios e preciso separa-los me grupos de 5 numeros usando esses 20 de uma forma que qualquer combinação possivel desses 20 numeros em grupos de 5 seja exibida
TECLA 08/01/2010 22:35:49
#331453
Resposta escolhida
Segue uma solução possível:

Chamada à função
MsgBox AnaliseCombinatoria([Ô]18;25;189;32;56;89;23[Ô])


Função
Private Function AnaliseCombinatoria(Numero As String) As String
Dim x, y As Integer, n, s() As String, r As String
s() = Split(Numero, [Ô];[Ô])
For x = 0 To UBound(s) - 1
For y = x + 1 To UBound(s)
r = r & s(x) & [Ô] - [Ô] & s(y) & vbLf
Next y
Next x
AnaliseCombinatoria = r
End Function
JEANCOELHO 11/01/2010 00:53:38
#331538
Funciono bem, so que assim ta formando em Grupos de 2 numeros, preciso de forma variavel! vou tentar apartir do seu codigo Muito Obrigado!

Novas dicas são bem vindas!
JEANCOELHO 11/01/2010 01:02:30
#331539
Opa funciono sim Pra quem tiver a mesma duvida é so fazer 1 For pra cada que da certo!

Muito Obrigado a todos que ajudaram!
Tópico encerrado , respostas não são mais permitidas