Ciao a tutti , allora ieri avevamo detto che Legend era risucito ad implementare tutto quanto gli avevo chiesto perciò prima di continuare con le nuove implementazioni metto il codice con le nuove aggiunte , lo trovate in fondo al post
I nomi delle variabili sono diversi da quelli usati da Legend ma il codice è identico.
gli altri scripter che ci seguono devono ricopiare solo il codice postato da me.
veniamo alle nuove implementazioni.
Per ora abbiamo creato un oggetto che riceve dall'esterno
- una lunghetta in formato stringa
- il carattere separatore dei numeri nella suddetta stringa
- il range inizio fine di analisi
- il vettore per le ruote
- la sorte da analizzare
internamente l'oggetto memorizza in un vettore interno i numeri della lunghetta e in altre variabili sempre interne tuttii parametri necessari per la statistica.Questo è quello che gia abbaimo fatto,
veniamo a ciò che c'è da fare
dopo aver lanciato la sub AlimentaVettoreLunghetta; avremo il vettore (dichiarato come privato)
aNumeri che contierrà i numeri della lunghetta , per i nostri scopi ci conviene individuare la classe dellla lunghetta , (ovvero quanti numeri sono nel vettore )e memorizzarla in una variabile privata locale visibile a tutta la classe clsLunghetta , questa variabile la chiameremo mClasse e appunto la dovremo valorizzare con il numero di numeri contenuti nel vettore aNumeri e questa è la prima delle nuove cose da fare.
Successivamente dobbiamo ricordarci della nostra analisi iniziale del problema , avevamo detto che ci sarebbe servito un vettore che contenesse i valori per IncrRitMax che quella combinazione ha avuto nel periodo analizzato , però avevamo anche detto che una simle funzione non esiste e che per crearcela da soli avremmo avuto bisogno dell'elenco dei ritardi che quella combinazione ha registrato per quella sorte nel periodo analizzato, ebbene questa è la seconda cosa da fare , alimentare il vettore con l'elenco dei ritardi della lunghetta per quella sorte.
Questo vettore
verrà dichiarato insieme a tutte le altre variabili locali globalmente visibili all'intera classe clsLunghetta e lo chiameremo aElencoRit , dato che la funzione di spazioscript che ci da l'eleco dei ritardi ci dice pure quali sono gli id delle estrazioni interessati dal ritardo e dato che anche queste informazioni ci vengono restituite in un vettore dovremo dichiarare insieme al vettore di prima
(aElencoRit) anche un altro vettore che conterra gli id delle estrazioni lo chiameremo aIdEstrElencoRit
questi due vettori verranno alimentati dall'apposita funzione dello spazioscript preposta per questo scopo .. (legend spero tu la conosca) tale funzione va ovvviamente richiamata da dentro la nostra classe .. in che punto la metteremo la chiamata a questa funzione ? Siamo gia un pezzo avanti perche i parametri che gli passeremo gia li abbiamo sottoforma di variabili ovvero tutte quelle che avevamo ricevuto dal chiamante e che l'oggetto clsLunghetta ha memorizzato al suo interno ...
vai legend .. copia il mio codice e in questo fai le implementazioni richieste.
2
Codice:
[COLOR=#0000CD][B]Option Explicit
Class clsLunghetta
Private aNumeri ' contiene i numeri della lunghetta
Private mInizio,mFine,aRuote,mSorte ' parametri per il range analisi
' inizializza le proprietà dell'oggetto
Sub Init(sLunghetta,sChrSep,RangeInizio,RangeFine,vetRuote,SorteInGioco)
' acquisisco i parametri passati dal chiamante
mInizio = RangeInizio
mFine = RangeFine
aRuote = vetRuote
mSorte = SorteInGioco
' alimento il vettore con i numeri della lunghetta
Call AlimentaVettoreLunghetta(sLunghetta,sChrSep)
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)
End Sub
End Class
Sub Main
Dim clsL
Set clsL = New clsLunghetta
ReDim aRuote(1)
aRuote(1) = 1
Call clsL.Init("1.2.3",".",5000,8000,aRuote,1)
End Sub[/B][/COLOR]