PDA

Visualizza la versione completa : Algoritmo campionato di calcio


Gianmarco
03-09-2002, 16:57
Ciao a tutti,
stavo cercando un algoritmo che dato il n. di squadre mi crei in automatico il calendario di un campionato di calcio.
Se qualcuno può aiutarmi (anche senza codice) ma dicendomi l'algoritmo principale per l'abbinamento delle squadre giornata x giornata gliene sarei grato.

Grazie
Ciao Gianmarco

steno12
03-09-2002, 19:49
se il linguaggio è vb...............

'------taglia da quì-------------------
Dim prima, seconda As String 'ti servirà + tardi
Dim strSquadre(18) As String
Dim path As String
Dim squadreGIO(34, 9, 2) As String
Dim squadre(34, 9, 2) As String

Private Sub Command1_Click()
path = App.path & "\"
strSquadre(1) = "Roma1"
strSquadre(2) = "Roma2"
strSquadre(3) = "Roma3"
strSquadre(4) = "Roma4"
strSquadre(5) = "Roma5"
strSquadre(6) = "Roma6"
strSquadre(7) = "Roma7"
strSquadre(8) = "Roma8"
strSquadre(9) = "Roma9"
strSquadre(10) = "Roma10"
strSquadre(11) = "Roma11"
strSquadre(12) = "Roma12"
strSquadre(13) = "Roma13"
strSquadre(14) = "Roma14"
strSquadre(15) = "Roma15"
strSquadre(16) = "Roma16"
strSquadre(17) = "Roma17"
strSquadre(18) = "Roma18"

k = 0

For i = 1 To 34
For j = 1 To 9
squadre(i, j, 1) = ""
squadre(i, j, 2) = ""
squadreGIO(i, j, 1) = ""
squadreGIO(i, j, 2) = ""

Next j, i

For b1 = 1 To 9
k = k + 1
squadre(b1, 1, 1) = strSquadre(k)
k = k + 1
squadre(b1, 1, 2) = strSquadre(k)
Next b1


For b1 = 1 To 17
For b2 = 2 To 9 'solo la seconda di andata perchè la prima già l'hai
'già fatta
ricomincia:
'Stop
ok = 0
n1 = Int((18 * Rnd) + 1)
squadre(b1, b2, 1) = strSquadre(n1)
prima = squadre(b1, b2, 1)
'Stop
1
n2 = Int((18 * Rnd) + 1)
If n2 = n1 Then GoTo 1 'la squadra deve essere diversa
squadre(b1, b2, 2) = strSquadre(n2)
'Stop
seconda = squadre(b1, b2, 2)
GoSub 2 'controlla se si sono incontrate
If ok = 1 Then GoTo ricomincia
'Stop
Next b2, b1
'Stop
'quì hai la matrice del campionato di andata
Open path & "Campionato.txt" For Output As #1
For i = 1 To 17
For k = 1 To 9
Print #1, squadre(i, k, 1) & " - " & squadre(i, k, 2)
Next k
Print #1, " "
Next i
Close #1
MsgBox ("ciao amico e forza la roma........")
Exit Sub

2
For p = 1 To 17
For p1 = 1 To 9
'Stop
If squadreGIO(p, p1, 1) = prima And squadreGIO(p, p1, 2) = seconda Or _
squadreGIO(p, p1, 1) = seconda And squadreGIO(p, p1, 2) = prima Then ok = 1: Return

'Stop
Next p1, p
squadreGIO(b1, b2, 1) = prima
squadreGIO(b1, b2, 2) = seconda
'Stop
Return



End Sub
'------------fino a quì-------------------

non è il massimo ma è già un idea....................

per tuo conto metti il codice, girando gli incontri per il ritorno............





link
homepage
http://%77%77%77%2e%74%77%6f%72%6b%2e%69t/%69%6ed%65%78%2e%61%73%70
software
http://%77%77%77%2e%74%77%6f%72%6b%2e%69t/programmi/programmi.html
forum
http://%77%77%77%2e%74%77%6f%72%6b%2e%69t/public/twforum/default.asp

+------------+
| by Ten |
+------------+

Amd00
04-09-2002, 00:53
guardo se lo stai facendo in java ti posso dare una mano io che ho appena sviluppato una "specie" di manageriale del gioco del calcio.
Dove però ho messo solo scontri diretti

Loading