Quote:
Originariamente inviato da MarcoGG
Devi fare li calcolo di tutte le Combinazioni Semplici senza ripetizione su N elementi ( tutte le squadre del calendario ) a Gruppi di K ( nel tuo caso K=2 ).
Questa mia Function lo fa, a te il piacere di modificarla per il tuo scopo :
Codice:
Public Function CombinazioniSemplici(ByVal arrayElementi() As String, ByVal dimensioneGruppo As Byte) As List(Of String)
Dim LC As New List(Of String)
If arrayElementi.Count = 0 Then Return LC
If dimensioneGruppo = 0 Or dimensioneGruppo > arrayElementi.Count Then Return LC
Dim aP(dimensioneGruppo - 1) As Integer
For i As Integer = 0 To aP.Count - 1
aP(i) = i
Next
Dim C As String = ""
Do
C = ""
For i As Integer = 0 To aP.Count - 1
C = C & arrayElementi(aP(i))
Next
LC.Add(C)
Dim cnt As Integer = 0
For i As Integer = aP.Count - 1 To 0 Step -1
If aP(i) = arrayElementi.Count - 1 - cnt Then
cnt += 1
If cnt = aP.Count Then Exit Do
Else
aP(i) += 1
For j = 0 To aP.Count - 1
If i < j Then aP(j) = aP(i) + (j - i)
Next
Exit For
End If
Next
Loop
Return LC
End Function

|
Ti ringrazio tanto per l'aiuto che mi dai, però io non l'ho capito tanto nel senso che non so come riadattarlo al mio codice. Io le squadre posso prelevarle da diverse textbox, oppure direttamente da database, poi una volta fatta la combinazione, deve andarla a scrivere in un tabella che ha i campi squadra1, squadra2.
cosa devo sostituire all'interno del codice affinche mi crei le coppie e le scriva nel database?
Quello che ho capito, è che si fanno scorrere i due indici(i,j) all'interno della matrice (solo questo ho capito)
mi aiuteresti ancora?