Scusate per prima :d non sapevo
In breve questo mi serve per creare giornate del calendario di serie A senza ripetizioni ovviamente
Ecco quello che ho scritto io :
questo codice pero mi da ancora ripetizioni negli archivi creati con le partite.codice:On Error GoTo GestioneErrori Dim incontri(1 To 20) As String Dim archivio, archivio2, ritorno1 As String Dim o, k, y As Byte Randomize o = 0 y = 1 k = Int(Rnd * 19 + 1) r = Int(Rnd * 19 + 1) incontri(1) = "JUVENTUS": incontri(2) = "INTER" incontri(3) = "LECCE": incontri(4) = "CATANIA" incontri(5) = "MILAN": incontri(6) = "UDINESE" incontri(7) = "LAZIO": incontri(8) = "REGGINA" incontri(9) = "ROMA": incontri(10) = "PALERMO" incontri(11) = "CHIEVO": incontri(12) = "NAPOLI" incontri(13) = "ATALANTA": incontri(14) = "CAGLIARI" incontri(15) = "TORINO": incontri(16) = "SIENA" incontri(17) = "SAMPDORIA": incontri(18) = "BOLOGNA" incontri(19) = "FIORENTINA": incontri(20) = "GENOA" Do For i = 1 To 38 archivio = "C:\Calendario\Serie A\Giornata " & i & "°.fnv" If FileLen(archivio) = 0 Then End If trovato = False Open archivio For Input As #1 Do k = Int(Rnd * 19 + 1) r = Int(Rnd * 19 + 1) Line Input #1, partite If k = r Then k = Int(Rnd * 9 + 1) r = Int(Rnd * 9 + 1) End If If partite = UCase(Trim(incontri(k) & " - " & incontri(r))) Then k = Int(Rnd * 9 + 1) r = Int(Rnd * 9 + 1) trovato = True i = 1 End If If partite = UCase(Trim(incontri(r) & " - " & incontri(k))) Then k = Int(Rnd * 9 + 1) r = Int(Rnd * 9 + 1) trovato = True i = 1 End If If Left(partite, Len(incontri(k))) = Trim(UCase(incontri(k))) Then k = Int(Rnd * 9 + 1) r = Int(Rnd * 9 + 1) trovato = True i = 1 End If If Left(partite, Len(incontri(r))) = Trim(UCase(incontri(r))) Then k = Int(Rnd * 9 + 1) r = Int(Rnd * 9 + 1) trovato = True i = 1 End If Loop Until EOF(1) Close #1 Next i GestioneErrori: If Err.Number = 53 Then Close #1 End If If trovato = False Then o = o + 1 archivio2 = "C:\Calendario\Serie A\Giornata " & y & "°.fnv" ritorno1 = "C:\Calendario\Serie A\Giornata " & y + 19 & "°.fnv" Open archivio2 For Append As #1 Print #1, incontri(k) & " - " & incontri(r) Close #1 Open ritorno1 For Append As #1 Print #1, incontri(r) & " - " & incontri(k) Close #1 If o >= 10 Then y = y + 1: o = 0 End If Loop Until y > 19
aiuto![]()
![]()
grazie

Rispondi quotando