Option Explicit
Sub Main
Dim fine,r,n,nn,x,ritardo,frequenza,ix,last,rt,nr,y,retrit,retritmax,retincrritmax,retfre,tutti,z,retcolpi,retestratti,retidestr,stat,ct,ctg,L,xy
Dim elenco,m,h,Lastr,Ini,finale,sor,retesito,ruota,fclasse,k,j,scolonna,colonne,ru,q,n1,n2
Dim gen(9999999),ruoterie(12,4005),fnumeri(90)
'''''''''' '''''''''''''''''''''''''''''''''''''''
ruota = InputBox("Ruota o 11 Tutte",,11)
''''''''''''''''''''''''''''''''''''''''''''''''''
tutti = CInt(InputBox("Vuoi elenco con quanti numeri ? ",,1))
fine = InputBox("All'estrazione n.",,EstrazioneFin)
stat = InputBox("Aggiungi Ritardi su tutte le ruote ",,"NO")
sor = CInt(InputBox("Per la sorte ",,2))
Scrivi " Situazione all'estrazione n." & fine & " / " & DataEstrazione(fine),1
'''''''loop per calcolare ritardi e frequenze per le 12 ruote in arrays GEN
'''''''''''è possibile filtrare solo combinazioni della ruota richiesta, mentre lasciando 11 si ottiene prospetto completo
fclasse = 2
For n = 1 To 90
fnumeri(n) = n
Next
'''''''''''''''''analizza tutti i 4005 ambi
colonne = SviluppoIntegrale(fnumeri,fclasse)
For k = 1 To UBound(colonne)
scolonna = ""
ReDim nm(2)
For j = 1 To fclasse
scolonna = scolonna & Format2(colonne(k,j)) & " "
nm(j) = colonne(k,j)
Next
Call Messaggio(" Elaboro Sviluppo Ambi Ruote " & k & " " & StringaNumeri(nm,".") & " " & SiglaRuota(ruota))
If ScriptInterrotto Then Exit For
Call AvanzamentoElab(1,UBound(colonne),k)
'''''''scelta sincronismo della ruota fissa
If ruota <> 11 Then
ReDim ar(1)
ar(1) = ruota
Call StatisticaFormazioneTurbo(nm,ar,sor,retrit,retritmax,retincrritmax,retfre,3950,fine)
ix = FormattaStringa(retrit,"0000") & FormattaStringa(retfre,"000")
gen(ix) = gen(ix) & Format2(nm(1)) & Format2(nm(2)) & " / " & SiglaRuota(ar(1)) & Format2(ar(1)) & " : "
End If
'''''''scelta per isocronismo nelle 12 ruote
If ruota = 11 Then
For r = 1 To 12
ReDim ar(1)
ar(1) = r
Call StatisticaFormazioneTurbo(nm,ar,sor,retrit,retritmax,retincrritmax,retfre,3950,fine)
ix = FormattaStringa(retrit,"0000") & FormattaStringa(retfre,"000")
gen(ix) = gen(ix) & Format2(nm(1)) & Format2(nm(2)) & " / " & SiglaRuota(ar(1)) & Format2(ar(1)) & " : "
Next
End If
Next
ColoreTesto(1)
Scrivi " Elenco con Ambi > di..." & tutti,1
If ruota <> 0 Then Scrivi " Lista Combinazioni Rilevate Solo per la Ruota di...." & NomeRuota(ruota),1
If ruota = 0 Then Scrivi " Lista Tutte le Combinazioni rilevate....",1
ColoreTesto(0)
Scrivi "_____________________________________________ ____ ________________________________",1
Scrivi " Rit/Fre Rcomb/XComb Num Ruota Num Ruota Num Ruota Num Ruota Num Ruota",1
'''''loop per stampa lista output delle combinazioni aventi almeno 2 numeri in sincronismo rit/fre
''''''''''verifica esito sulle ruote di rilevamento del sincronismo
For nn = 0 To 999999
If gen(nn) <> "" Then
ReDim aV2(0),ruote(13),numeri(55),ele(90)
Call SplitByChar(gen(nn)," : ",aV2)
last = UBound(aV2)
If last > 0 Then
If last > tutti Then
xy = xy + 1
Scrivi "<-------------------------------------------------------------------------------------------> ",1
For y = 0 To last - 1
rt = Right(aV2(y),2)
nr = Left(aV2(y),4)
' Scrivi aV2(y) & "....." & rt & "......" & nr
'''carica array ruote e numeri ed elimina eventuali ripetuti
ruote(rt) = rt
numeri(y + 1) = Left(nr,2)
numeri(y + 2) = Right(nr,2)
EliminaRipetuti(numeri)
n1 = Left(nr,2) : n2 = Right(nr,2) :
ele(n1) = n1 : ele(n2) = n2
Scrivi SiglaRuota(rt) & ".....Ambo...." & Format2(n1) & " " & Format2(n2)
Next
ColoreTesto(0)
Call StatisticaFormazioneTurbo(numeri,ruote,1,retrit,retritmax,,,3950,fine)
ct = ct + 1
ColoreTesto(1)
Scrivi StringaNumeri(ele,".")
If retrit >= retritmax Then
ColoreTesto(2)
Else
ColoreTesto(0)
End If
Scrivi FormattaStringa(nn,"0000/000") & " " & FormattaStringa(retrit,"0000") & "/" & FormattaStringa(retritmax,"0000") & "...." & gen(nn),1
''''' verifica esiti
Call VerificaEsitoTurbo(numeri,ruote,fine + 1,sor,,,retesito,retcolpi,retestratti,retidestr)
If retestratti <> "" Then
ctg = ctg + 1
ColoreTesto(1)
Scrivi retidestr & "....." & retestratti & ".... colpo n." & FormattaStringa(retcolpi,"000") & " -- " & retesito,1
ColoreTesto(0)
End If
'''''''''''''''''''''''''''''''''''
If stat = "SI" Or stat = "si" Then
ReDim ruote(1)
ColoreTesto(2)
For z = 1 To 12
If z <> 11 Then
ruote(1) = z
Call StatisticaFormazioneTurbo(numeri,ruote,1,retrit,retritmax,,,3950,fine)
Scrivi "------> " & SiglaRuota(z) & " " & FormattaStringa(retrit,"000") & "/" & FormattaStringa(retritmax,"000") & "...." & gen(nn)
End If
Next
End If
End If
End If
End If
Next
Scrivi " Totale combinazioni elaborate......." & ct,1
Scrivi " Totale Esiti Vincenti..............." & ctg,1
Scrivi " Situazione all'estrazione n." & fine & " / " & DataEstrazione(fine),1
End Sub