Novità

Errore a quanto pare con i cicli

  • Creatore Discussione Creatore Discussione skox
  • Data di inizio Data di inizio

skox

Junior Member
Ciao a tutti:) Sono nuovo ma mi sto dilettando con spaziometria.
A tal proposito, ho un problema. Ho creato lo script in basso partendo da una base. Dovrebbe in teoria raccogliermi i massimi ritardi storici, ma non va. FUnziona se non inserisco i cicli, ma appena ne metto uno o due per loopare per tutte le ruote le tabelle sono sballate. Le ruote cambiano, i numeri anche ma i ritardi no. Qual'è l'errore?
Grazie

Codice:
[FONT=Verdana]Option Explicit[/FONT]Sub Main


    
    Dim nClasse
    Dim nGaranzia
    Dim k,j,r1,r2
    Dim sNumeri
    Dim idComb
    Dim nInizio,nFine
    Dim idValoreDaAna
    Dim sValoreUsato
    Dim CombTot
    


    ReDim aCombMigliori(5,4)
    
    nGaranzia = ScegliGaranzia
    idValoreDaAna = ScegliValoreDaAnalizzare(sValoreUsato)
    nClasse = ScegliClasse
    nInizio = EstrazioneIni    
nFine = EstrazioneFin


Call Scrivi("CLASSE " & nClasse & " GARANZIA " & nGaranzia)
        Call Scrivi("IN BASE A " & sValoreUsato)
        Call Scrivi("Range analizzato " & GetInfoEstrazione(nInizio) & " fino a " & GetInfoEstrazione(nFine))
        Call Scrivi("Estrazioni analizzate totali : " &(nFine + 1) - nInizio)
        Call Scrivi




    
Dim aRuote(2)
        
    For r1 = 1 To 2
     r2 = r1 + 1
        
aRuote(1) = r1
aRuote(2) = r2


    
    If nClasse > 0 And nGaranzia > 0 And nGaranzia <= nClasse And idValoreDaAna > 0 Then
        Call Messaggio("Sviluppo combinazioni di classe " & nClasse)
        CombTot = InitSviluppaComb(nClasse)
        
        Call Messaggio("Statistica combinazioni in corso ")
        
        
        ReDim aCol(nClasse)
        Do While GetCombSviluppo(aCol) = True
            Call AnalisiComb(aCol,aRuote,nGaranzia,aCombMigliori,nInizio,nFine,idValoreDaAna)
            k = k + 1
            If k Mod 20 = 0 Then
                Call Messaggio("Statistica combinazioni in corso " & k & " di " & CombTot)
        
                Call AvanzamentoElab(1,CombTot,k)
                
                If ScriptInterrotto Then Exit Do
            End If
        Loop
        Call Messaggio("")


        ReDim aTitoli(5)
        aTitoli(1) = "Combinazione"
        aTitoli(2) = "Frequenza"
        aTitoli(3) = "Ritardo"
        aTitoli(4) = "RitardoMax"
        aTitoli(5) = "Ruote"
        
        
        
        


        Call InitTabella(aTitoli)


        For k = 1 To UBound(aCombMigliori)
            
            
            ReDim ADati(5)
            ADati(1) = aCombMigliori(k,4)
            ADati(2) = aCombMigliori(k,1)
            ADati(3) = aCombMigliori(k,2)
            ADati(4) = aCombMigliori(k,3)
            ADati(5) = GetRuoteUsate(aRuote)
            Call AddRigaTabella(ADati)             


        Next


        Call CreaTabella
    
    Else
        MsgBox "Selezionare la classe di sviluppo e la garanzia , " & _
        "si ricorda che la garanzia non puo essere maggiore della classe di sviluppo " & _
        "e che bisogna scegliere quale valore statistico considerare per " & _
        "alimentare la lista delle prime 100 Combinazioni "
        End If
        
    
        Next
        




End Sub
Sub AnalisiComb(aNum,aRuote,Garanzia,aCombMig,nInizio,nFine,idValoreDaAna)
    
    Dim k,j
    
    Dim Rit
    Dim RitMax
    Dim Freq
    Dim Valore
    
    
    
    
    
    Call StatisticaFormazione(aNum,aRuote,Garanzia,Rit,RitMax,0,Freq,nInizio,nFine)
    Select Case idValoreDaAna
    Case 1
        Valore = Freq
    Case 2
        Valore = Rit
    Case 3
        Valore = RitMax
    End Select
    For k = 1 To UBound(aCombMig)
        
        If Valore >= aCombMig(k,0) Then
            
            For j = UBound(aCombMig) To(k + 1) Step - 1
                aCombMig(j,0) = aCombMig(j - 1,0)
                aCombMig(j,1) = aCombMig(j - 1,1)
                aCombMig(j,2) = aCombMig(j - 1,2)
                aCombMig(j,3) = aCombMig(j - 1,3)
                aCombMig(j,4) = aCombMig(j - 1,4)
                


            Next
            aCombMig(k,0) = Valore
            aCombMig(k,1) = Freq
            aCombMig(k,2) = Rit
            aCombMig(k,3) = RitMax
            aCombMig(k,4) = StringaNumeri(aNum)
            
            
            Exit For
                
        End If
    Next
End Sub
Function InitSviluppaComb(Classe)
    
    Dim k
    ReDim aNum(90)


    For k = 1 To 90
        aNum(k) = k
    Next
    
    InitSviluppaComb = InitSviluppoIntegrale(aNum,Classe)
    
End Function


Function ScegliClasse()
    ReDim aVoci(3)
    
    aVoci(0) = "Estratto"
    aVoci(1) = "Ambo"
    aVoci(2) = "Terno"
    aVoci(3) = "Quaterna"
    
    
    ScegliClasse = ScegliOpzioneMenu(aVoci,2,"Secegli tipo combinazione") + 1
End Function


Function ScegliGaranzia()


    ReDim aVoci(3)
    
    aVoci(0) = "Estratto"
    aVoci(1) = "Ambo"
    aVoci(2) = "Terno"
    aVoci(3) = "Quaterna"
    
    
    ScegliGaranzia = ScegliOpzioneMenu(aVoci,2,"Secegli garanzia") + 1
End Function


Function ScegliValoreDaAnalizzare(sValore)


    ReDim aVoci(2)
    Dim i
    
    aVoci(0) = "Frequenza"
    aVoci(1) = "Ritardo"
    aVoci(2) = "Ritardo massimo"
    
    
    
    i = ScegliOpzioneMenu(aVoci,0,"Quale valore considerare per l'ordinamento ? ")
    sValore = aVoci(i)
    ScegliValoreDaAnalizzare = i + 1
End Function


Function GetRuoteUsate(aRuote)


    Dim k
    Dim s
    
    
    For k = 1 To UBound(aRuote)
        s = s & SiglaRuota(aRuote(k)) & " "
    Next
    GetRuoteUsate = Trim(s)
End Function



CLASSE 2 GARANZIA 2IN BASE A Ritardo massimoRange analizzato [00015] [ 15] 16.04.1871 fino a [08673] [ 41] 04.04.2013Estrazioni analizzate totali : 8659

[TD="bgcolor: #ffffff, align: center"] Combinazione [/TD]
[TD="bgcolor: #ffffff, align: center"] Frequenza [/TD]
[TD="bgcolor: #ffffff, align: center"] Ritardo [/TD]
[TD="bgcolor: #ffffff, align: center"] RitardoMax [/TD]
[TD="bgcolor: #ffffff, align: center"] Ruote [/TD]

[TD="bgcolor: #ffffff, align: center"] 57.73 [/TD]
[TD="bgcolor: #ffffff, align: center"] 33 [/TD]
[TD="bgcolor: #ffffff, align: center"] 268 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3506 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]

[TD="bgcolor: #ffffff, align: center"] 11.77 [/TD]
[TD="bgcolor: #ffffff, align: center"] 26 [/TD]
[TD="bgcolor: #ffffff, align: center"] 140 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3504 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]

[TD="bgcolor: #ffffff, align: center"] 27.46 [/TD]
[TD="bgcolor: #ffffff, align: center"] 28 [/TD]
[TD="bgcolor: #ffffff, align: center"] 146 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3439 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]

[TD="bgcolor: #ffffff, align: center"] 52.86 [/TD]
[TD="bgcolor: #ffffff, align: center"] 31 [/TD]
[TD="bgcolor: #ffffff, align: center"] 496 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3335 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]

[TD="bgcolor: #ffffff, align: center"] 23.67 [/TD]
[TD="bgcolor: #ffffff, align: center"] 24 [/TD]
[TD="bgcolor: #ffffff, align: center"] 97 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3156 [/TD]
[TD="bgcolor: #ffffff, align: center"] BA CA [/TD]



[TD="bgcolor: #ffffff, align: center"] Combinazione [/TD]
[TD="bgcolor: #ffffff, align: center"] Frequenza [/TD]
[TD="bgcolor: #ffffff, align: center"] Ritardo [/TD]
[TD="bgcolor: #ffffff, align: center"] RitardoMax [/TD]
[TD="bgcolor: #ffffff, align: center"] Ruote [/TD]

[TD="bgcolor: #ffffff, align: center"] 54.70 [/TD]
[TD="bgcolor: #ffffff, align: center"] 28 [/TD]
[TD="bgcolor: #ffffff, align: center"] 38 [/TD]
[TD="bgcolor: #ffffff, align: center"] 4025 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]

[TD="bgcolor: #ffffff, align: center"] 57.73 [/TD]
[TD="bgcolor: #ffffff, align: center"] 33 [/TD]
[TD="bgcolor: #ffffff, align: center"] 268 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3506 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]

[TD="bgcolor: #ffffff, align: center"] 11.77 [/TD]
[TD="bgcolor: #ffffff, align: center"] 26 [/TD]
[TD="bgcolor: #ffffff, align: center"] 140 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3504 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]

[TD="bgcolor: #ffffff, align: center"] 27.46 [/TD]
[TD="bgcolor: #ffffff, align: center"] 28 [/TD]
[TD="bgcolor: #ffffff, align: center"] 146 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3439 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]

[TD="bgcolor: #ffffff, align: center"] 52.86 [/TD]
[TD="bgcolor: #ffffff, align: center"] 31 [/TD]
[TD="bgcolor: #ffffff, align: center"] 496 [/TD]
[TD="bgcolor: #ffffff, align: center"] 3335 [/TD]
[TD="bgcolor: #ffffff, align: center"] CA FI [/TD]


Vedete la colonna ritardomax. Si vede già così che è completamente sballata
 
Ultima modifica:

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 29 luglio 2025
    Bari
    83
    52
    44
    45
    01
    Cagliari
    28
    75
    63
    09
    44
    Firenze
    73
    36
    45
    35
    87
    Genova
    43
    72
    13
    34
    85
    Milano
    36
    52
    50
    41
    10
    Napoli
    73
    16
    23
    27
    48
    Palermo
    70
    53
    74
    58
    48
    Roma
    57
    40
    45
    47
    32
    Torino
    70
    13
    85
    75
    69
    Venezia
    56
    35
    72
    66
    20
    Nazionale
    81
    25
    45
    54
    32
    Estrazione Simbolotto
    Nazionale
    03
    35
    36
    16
    28

Ultimi Messaggi

Indietro
Alto