EXTRAIR COMBINACOES DE NUMERO
X01 = Mid(Text1.Text, 1, 2)
X02 = Mid(Text1.Text, 3, 2)
X03 = Mid(Text1.Text, 5, 2)
X04 = Mid(Text1.Text, 7, 2)
X05 = Mid(Text1.Text, 9, 2)
X06 = Mid(Text1.Text, 11, 2)
RichTextBox1.Text = RichTextBox1.Text & X01 & X02 & X03 & X04 & X05 & X06 & vbCrLf
RichTextBox1.Text = RichTextBox1.Text & X01 & X02 & X03 & X04 & X05 & X07 & vbCrLf
RichTextBox1.Text = RichTextBox1.Text & X01 & X02 & X03 & X04 & X05 & X08 & vbCrLf
RichTextBox1.Text = RichTextBox1.Text & X01 & X02 & X03 & X04 & X05 & X09 & vbCrLf
RichTextBox1.Text = RichTextBox1.Text & X01 & X02 & X03 & X04 & X05 & X10 & vbCrLf
[txt-color=#e80000].
.
.[/txt-color]
Intão pessoal, este codigo ae e bem maior que isto. Muito maior mesmo
Eu não encontrei uma forma de escreve-lo para q ele estraia as conbinações da string (text1)
Dae tentei escrever o q seria cada um das combinações....Mais me perdi varias vezes e fico um lixo
Citação:Text1.Text = [Ô]01020304050607080910[Ô]
X01 = Mid(Text1.Text, 1, 2)
X02 = Mid(Text1.Text, 3, 2)
X03 = Mid(Text1.Text, 5, 2)
X04 = Mid(Text1.Text, 7, 2)
X05 = Mid(Text1.Text, 9, 2)
X06 = Mid(Text1.Text, 11, 2)
RichTextBox1.Text = RichTextBox1.Text & X01 & X02 & X03 & X04 & X05 & X06 & vbCrLf
RichTextBox1.Text = RichTextBox1.Text & X01 & X02 & X03 & X04 & X05 & X07 & vbCrLf
RichTextBox1.Text = RichTextBox1.Text & X01 & X02 & X03 & X04 & X05 & X08 & vbCrLf
RichTextBox1.Text = RichTextBox1.Text & X01 & X02 & X03 & X04 & X05 & X09 & vbCrLf
RichTextBox1.Text = RichTextBox1.Text & X01 & X02 & X03 & X04 & X05 & X10 & vbCrLf
Pelo o que eu vi, e vou trabalhar em cima disso, o inicio será sempre o mesmo (X01 Ã X05) então...
Exemplo, adicione a variável [Ô]X0_(0 to 200)[Ô] [ô]uma variável que vai de 0 a 200, se preciso faça maior
Dim X0_(0 To 200) As String
X0_(0) = Mid(txtTexto.Text, 1, 10)
Dim i, ii As Integer
ii = 1
For i = 11 To Len(txtTexto.Text)
X0_(ii) = Mid(txtTexto.Text, i, 2) [ô]alimenta a variavel X0_(?)
ii = ii + 1 [ô]Aqui somo mais 1 na variavel [Ô] ii [Ô]
[ô]Como o FOR soma mais 1 automático e eu preciso que seja somando mais 2, aqui eu faço isso
i = i + 1
Next
[ô]Pelo o que eu vi, e vou trabalhar em cima disso, o inicio será sempre o mesmo (X01 à X05) então...
[ô]Exemplo, adicione a variável [Ô]X0_(0 to 200)[Ô] [ô]uma variável que vai de 0 a 200, se preciso faça maior
Dim X0_(0 To 200) As String
X0_(0) = Mid(Text1.Text, 1, 10)
Dim i, ii As Integer
ii = 1
For i = 11 To Len(Text1.Text)
X0_(ii) = Mid(Text1.Text, i, 2) [ô]alimenta a variavel X0_(?)
ii = ii + 1 [ô]Aqui somo mais 1 na variavel [Ô] ii [Ô]
[ô]Como o FOR soma mais 1 automático e eu preciso que seja somando mais 2, aqui eu faço isso
i = i + 1
List1.AddItem i
Next
End Sub
Ficaria maisomenos isso?
To estressado com esse trem duma forma q nao to nem raciocinando mais
Dim X0_(0 To 200) As String
X0_(0) = Mid(Text1.Text, 1, 10)
[txt-color=#0000f0]Dim [/txt-color]i, ii[txt-color=#0000f0] As Integer[/txt-color]
ii = 1
[txt-color=#0000f0]For[/txt-color] i = 11 To Len(Text1.Text)
X0_(ii) = Mid(Text1.Text, i, 2) [ô]alimenta a variavel X0_(?)
[txt-color=#e80000] List1.AddItem X0_(ii)[/txt-color]
ii = ii + 1[txt-color=#007100] [ô]Aqui somo mais 1 na variavel [Ô] ii [Ô][/txt-color]
[txt-color=#007100] [ô]Como o FOR soma mais 1 automático e eu preciso que seja somando mais 2, aqui eu faço isso[/txt-color]
i = i + 1
[txt-color=#0000f0]Next
End Sub[/txt-color]
Dim X0_(0 To 200) As String
X0_(0) = Mid(Text1.Text, 1, 10)
[txt-color=#0000f0]Dim [/txt-color]i, ii[txt-color=#0000f0] As Integer[/txt-color]
ii = 1
[txt-color=#0000f0]For[/txt-color] i = 11 To Len(Text1.Text)
X0_(ii) = Mid(Text1.Text, i, 2) [ô]alimenta a variavel X0_(?)
[txt-color=#e80000] List1.AddItem X0_(ii)
OU
RichTextBox1.Text = RichTextBox1.Text & X0_0 & X0_(ii) & vbCrLf [/txt-color]
ii = ii + 1[txt-color=#007100] [ô]Aqui somo mais 1 na variavel [Ô] ii [Ô][/txt-color]
[txt-color=#007100] [ô]Como o FOR soma mais 1 automático e eu preciso que seja somando mais 2, aqui eu faço isso[/txt-color]
i = i + 1
[txt-color=#0000f0]Next
End Sub[/txt-color]
Ou faça assim, sem a Variável X0_(?)
[txt-color=#0000f0]Private Sub[/txt-color] Command1_Click()
[txt-color=#0000f0]Dim [/txt-color]i, ii[txt-color=#0000f0] As Integer[/txt-color]
ii = 1
[txt-color=#0000f0]For[/txt-color] i = 11 To Len(Text1.Text)
RichTextBox1.Text = RichTextBox1.Text & [txt-color=#e80000]Mid(Text1.Text, 1, 10)[/txt-color] & [txt-color=#e80000]Mid(Text1.Text, i, 2) [/txt-color] & vbCrLf
ii = ii + 1[txt-color=#007100] [ô]Aqui somo mais 1 na variavel [Ô] ii [Ô][/txt-color]
[txt-color=#007100] [ô]Como o FOR soma mais 1 automático e eu preciso que seja somando mais 2, aqui eu faço isso[/txt-color]
i = i + 1
[txt-color=#0000f0]Next
End Sub[/txt-color]
Dim i, ii As Integer
ii = 1
For i = 11 To Len(Text1.Text)
RichTextBox1.Text = RichTextBox1.Text & Mid(Text1.Text, 1, 10) & Mid(Text1.Text, i, 2) & vbCrLf
ii = ii + 1 [ô]Aqui somo mais 1 na variavel [Ô] ii [Ô]
[ô]Como o FOR soma mais 1 automático e eu preciso que seja somando mais 2, aqui eu faço isso
i = i + 1
Next
dos codigos que você postou esse e o que chegou mais perto
ele me retorna isso daqui e para
010203040506
010203040507
010203040508
010203040509
010203040510
tem que continuar...
010203040607
010203040608
010203040609
010203040610
... e assim por diante
Private Function AnaliseCombinatoria(Numero As String)
Dim s() As String, m As Integer [ô], r As String
m = 0
For f = 1 To Len(Numero) Step 2
m = m + 1
ReDim Preserve s(m) As String
s(m) = Mid(Numero, f, 2)
Next f
For x = 1 To UBound(s) - 1
For a = x + 1 To UBound(s)
For b = a + 1 To UBound(s)
For c = b + 1 To UBound(s)
For d = c + 1 To UBound(s)
For e = d + 1 To UBound(s)
RichTextBox1.Text = RichTextBox1.Text & s(x) & s(a) & s(b) & s(c) & s(d) & s(e) & vbCrLf
Next e
Next d
Next c
Next b
Next a
Next x
End Function
Private Sub Command1_Click()
Call AnaliseCombinatoria([Ô]01020304050607080910[Ô])
End Sub
o código acima foi feito a algum tempo pelo colega Tecla e adaptado por mim veja como fica.
Citação::
Dim i, ii As Integer
ii = 1
For i = 11 To Len(Text1.Text)
RichTextBox1.Text = RichTextBox1.Text & Mid(Text1.Text, 1, 10) & Mid(Text1.Text, i, 2) & vbCrLf
ii = ii + 1 [ô]Aqui somo mais 1 na variavel [Ô] ii [Ô]
[ô]Como o FOR soma mais 1 automático e eu preciso que seja somando mais 2, aqui eu faço isso
i = i + 1
Next
dos codigos que você postou esse e o que chegou mais perto
ele me retorna isso daqui e para
010203040506
010203040507
010203040508
010203040509
010203040510
tem que continuar...
010203040607
010203040608
010203040609
010203040610
... e assim por diante
Mas pera ai!
Você mostrou que no primeiro post que seria:
RichTextBox1.Text = RichTextBox1.Text &[txt-color=#e80000] X01[/txt-color] & X02 & X03 & X04 &[txt-color=#e80000] X05[/txt-color] & [txt-color=#0000f0]X06[/txt-color] & vbCrLf
RichTextBox1.Text = RichTextBox1.Text &[txt-color=#e80000] X01[/txt-color] & X02 & X03 & X04 &[txt-color=#e80000] X05[/txt-color] & [txt-color=#0000f0]X07[/txt-color] & vbCrLf
Ou seja De X01 Ã X05 em todas as linhas, então te passei certo.
Mas se você quer de X01 à X04 + X06 é só adaptar.
Vá jogando os MID para frente ou para trás conforme a necessidade
Tenta assim:
Private Sub Command1_Click()
Dim X0_(0 To 200) As String
X0_(0) = Mid(Text1.Text, 1, 10)
Dim i, ii As Integer
ii = 1
For i = 13 To Len(Text1.Text)
X0_(ii) = Mid(Text1.Text, i, 2) [ô]alimenta a variavel X0_(?)
RichTextBox1.Text = RichTextBox1.Text & Mid(Text1.Text, 1, 8) & Mid(Text1.Text, 11, 2) & Mid (Text1.Text, i, 2) & vbCrLf
ii = ii + 1 [ô]Aqui somo mais 1 na variavel [Ô] ii [Ô]
[ô]Como o FOR soma mais 1 automático e eu preciso que seja somando mais 2, aqui eu faço isso
i = i + 1
Next
End Sub
Vi e to apaixonado aqui kkkkkkkkkkkkkkkk
Num to acreditando ainda
o trem fez em segundos