lotto_tom75
Advanced Premium Member
i legend;n1936710 ha scritto:Ciao luigi non spezzarsi le braccineCodice:Option Explicit Class clsLunghetta Private aNumeri ' contiene i numeri della lunghetta Private mInizio,mFine,aRuote,mSorte ' parametri per il range analisi Private mClasse ' contine la classe della lunghetta Private aElencoRit ' conterra l'elenco dei ritardi per la lunghetta Private aIdEstrElencoRit ' conterra l'elenco dei ritardi per la lunghetta Private aElencoIncrRitMax 'contiene l'elnco degli incrementi del ritardo max Private aIdEstrIncrRitMax ' conterra l'elenco degli id estrazione in 'cui si è registrato l'incremento del ritmax conosciuto Private Rit, RitMax, Inc, Freq, MaxIncSto ' inizializza le proprietà dell'oggetto Sub Init(sLunghetta,sChrSep,RangeInizio,RangeFine,vetRuote,SorteInGioco, Ritardo,Incremento, MaxInc,Frequenza) ' acquisisco i parametri per l'analisi mInizio = RangeInizio mFine = RangeFine aRuote = vetRuote mSorte = SorteInGioco ' alimento il vettore con i numeri della lunghetta Call AlimentaVettoreLunghetta(sLunghetta,sChrSep) ' calcolo l'elenco dei ritardi Call ElencoRitardiTurbo(aNumeri,aRuote,mSorte,mInizio,mFine,aElencoRit,aIdEstrElencoRit) ' alimento il vettore che contien l'elenco degli incrementi rit max Call GetStatistica Incremento =inc : Ritardo =Rit : Frequenza =Freq Call AlimentaVettoreIncrRitMax MaxInc= MaxIncSto End Sub Private Sub AlimentaVettoreLunghetta(sLunghetta,sChrSep) ' antepongo un carattere separatore per fare in modo che ' aNumeri si valorizzi dall'indice 1 (senno si sarebeb valorizzato dall'indice 0) Call SplitByChar((sChrSep & sLunghetta),sChrSep,aNumeri) ' valorizzo la classe della lunghetta mClasse = UBound(aNumeri) End Sub Private Sub AlimentaVettoreIncrRitMax Dim nRitMax,nIncr,nId,k nId = 0 ' inizializzo il vettore a 0 elementi ReDim aElencoIncrRitMax(0) ReDim aIdEstrIncrRitMax(0) ' ciclo sul vettore dei ritardi For k = 1 To UBound(aElencoRit)-1 ' se il ritardo corrente supera il ritmax attuale.. If aElencoRit(k) > nRitMax Then If nRitMax > 0 Then ' se il ritmax attuale è >0 (ivvero ne esiste uno) ' calcolo di quanto si è incrementato nIncr = aElencoRit(k) - nRitMax ' incremento il contatore dei valori trovati nId = nId + 1 ' ridimensiono il vettore mantenendo i valori precedenti ma ' aggiungendone uno ReDim Preserve aElencoIncrRitMax(nId) ' memorizzo il valore aElencoIncrRitMax(nId) = nIncr ' ridimensiono il vettore mantnendo i valori precedenti ma ' aggiungendone uno ReDim Preserve aIdEstrIncrRitMax(nId) ' memorizzo l'id dell'estrazione dove si è avuto l'incremento aIdEstrIncrRitMax(nId) = aIdEstrElencoRit(k) End If nRitMax = aElencoRit(k) End If Next MaxIncSto =massimov ( aElencoIncrRitMax ) End Sub Private Sub GetStatistica Call statisticaformazioneturbo ( aNumeri, aRuote, mSorte, Rit, RitMax, Inc, Freq ) End sub Public property get isCondizioneRispettata If Inc >0 Then If MaxIncSto -Inc < = 3 then IsCondizioneRispettata = true End if End property End Class Sub Main ' codice usato solo per testare la classe Dim clsL,n, n1 Dim Rit, Incr, Freq, MaxInc Dim aNum Set clsL = New clsLunghetta ReDim aRuote(1) aRuote(1) = 5 ' intestazione Scrivi " Form|Rit |Inc |incSto|Freq" For n = 1 To 89 For n1=n+1 To 90 aNum =n&"."&n1 Call clsL.Init ( aNum, ".",3950,estrazionefin ,aRuote,1,rit, Incr, MaxInc, Freq ) If clsL.IsCondizioneRispettata Then Scrivi aNum &" ",1,0 scrivi Rit &" ",0,0 Scrivi incr &" ",0,0 Scrivi MaxInc &" ",0,0 Scrivi freq End If Next Next Set clsL = Nothing End Sub
Ho scritto la funzione come condizione filtro e messo un esempio per vedere se può essere un abbozzo di statistica.
Il mio script è formattato bene da cell troppo codice.
Se ci siamo togliamo il di più e proseguiamo.
In questo script tolgo l ultimo ritardo perfavore provare in entrambi i modi per valutarne la differenza.
Tom fatti sentire ciao
Ciao legend più che farmi sentire.. mi farò leggere.. ma il papiro... che ho scritto al numero #76 di questo thread l'hai visto? Ad ogni modo ho provato a copiare e incollare questo tuo incredibile codice sul programma del grande luigi e ad eseguirlo ma mi da errore riferito a questa riga:
Codice:
If MaxIncSto-Inc < = 3 Then isCondizioneRispettata = True
A te funzia?
Ciao grandissimooo
Ultima modifica: