SOMA ARRAY
Pessoal, um desafio. Tenho uma array, sendo: exemplo
array(25,50-38,95-65,90-25,50-34,82-29,53-25,68)
a soma de tres desses valores é igual a 86,00
existe possiblidade de fazer uma analise combinatoria na array e mostrar quais são esse valores? Não precisa ser propriamente em uma array.
array(25,50-38,95-65,90-25,50-34,82-29,53-25,68)
a soma de tres desses valores é igual a 86,00
existe possiblidade de fazer uma analise combinatoria na array e mostrar quais são esse valores? Não precisa ser propriamente em uma array.
boas o tamanho do array é 8 ????
porque tem 2 valores na mesma casa com um sinal - (subtração) ??
porque tem 2 valores na mesma casa com um sinal - (subtração) ??
não é sinal, é somente um separador. Pode usar a virgula ou outro.
bem.. este code faz o serviço
acho que deve ser isto....
Option Explicit
Dim MyArr(1 To 7) As Double
Private Sub Command2_Click()
Dim i As Integer, i2 As Integer, i3 As Integer
For i = 1 To 5
For i2 = i + 1 To 6
For i3 = i2 + 1 To 7
If MyArr(i) + MyArr(i2) + MyArr(i3) = 86 Then
MsgBox [Ô]achou: [Ô] & MyArr(i) & [Ô] + [Ô] & MyArr(i2) & [Ô] + [Ô] & MyArr(i3)
Exit Sub
End If
Next [ô]i3
Next [ô]i2
Next [ô]i
End Sub
Private Sub Form_Load()
MyArr(1) = 25.5
MyArr(2) = 38.95
MyArr(3) = 65.9
MyArr(4) = 25.5
MyArr(5) = 34.82
MyArr(6) = 29.53
MyArr(7) = 25.68
End Sub
acho que deve ser isto....
Faz assim
Dim sptVal As Variant
Dim soma As Currency
[ô]array(25,50-38,95-65,90-25,50-34,82-29,53-25,68)
soma = 0
For i = 0 To UBound(array)
sptVal = Split(array(i), [Ô]-[Ô]) [ô]Caso queira é só mudar o delimitador
If UBound(sptVal) > 0 Then
For x = 0 To UBound(sptVal)
soma = soma + CCur(sptVal(x))
Next
Else
soma = soma + CCur(array(i))
End If
Next
Tópico encerrado , respostas não são mais permitidas