Novità

Spaziometria - ritardi di rigo

Joe91

Advanced Member >PLATINUM PLUS<
Ciao piermarco,

dovresti chiedere, per questo problema, dove si tratta del programma vero e proprio.

Eventualmente ripetere e/o continuare la discussione in quella sede.

Però ti consiglio di leggere bene le istruzioni e tentare una nuova installazione

seguendo con scrupolo le indicazioni che sono allegate al download di Spaziometria.

:) Cordiali saluti.
 
L

LuigiB

Guest
Joe91;n1997378 ha scritto:
Ciao Luigi.

non sono conteggiati presenti gli estratti che in esse (ed in ogni caso) sono caduti.

Dunque secondo me è un errore.

....
....
.....

Essendo estratti 5 numeri in ogni estrazione ... dividi questo Totale Presenze per 5,

ed ottieni il numero delle Estrazioni conteggiate.

Rileverai che sono "meno" estrazioni di quante dovrebbero essere.

Mentre come vedi per contro nella tabellina sopra 6 + 5 + 5 + 5 + 4 = 25

25 / 5 = 5 Estrazioni.

:) In attesa di un tuo riscontro ... porgo cordiali saluti a tutte/i.


[/code]


ciao Joe , allora nel week end ho ovviamente piu tempo , prima i tuoi messaggi li avevo letti solo col cellulare e non li avevo capiti bene, ora li ho letti con piu attenzione-
Allora il mio script conteggia gli sfaldamenti dei "righi" non le cadute dei numeri .. per frequenza il mio script intende quante volte la tale riga si sia sfaldata , se cade un solo numero o per ipotesi cadessero tutti e 5 (con la stessa estrazione) sempre 1 conteggia .. quella riga si è sfaldata una volta sola anche se sono usciti 5 numeri (due cinquine ugali una appresso all'altra eheheh ).. in pratica devo conteggiare le cadute dei numeri non gli sfaldamenti delle righe ?
Credo sia possibile e per me è del tutto indifferente faccio come dite voi ..
fammi sapere
 

i legend

Premium Member
Ciao luigi

Forse sono vicino alla metà,:) qualsiasi decisione prendiate lasceresti entrambi gli script?
Vorrei studiarli bene.
Grazie.
Ciao ben tornato dalle ferie.:)
 

Joe91

Advanced Member >PLATINUM PLUS<
Ciao Luigi.

Scusa se non ho scritto prima, non è per mancanza di volontà ...

ma sto forum funziona veramente malissimo.

Chiusa perentesi.

Ho ricordato una cosa che avevi scritto e nella quale potrebbere risiedere

la spiegazione. Ma è diversa da quest'ultima.

Ed è forse anche ... più compatibile e/o idonea a svelare

il perchè delle differenze riscontrate.

Quindi vorrei controllare bene prima di azzardare una spiegazione

o proporre un eventuale soluzione.

Spero domattina con più calma anche se una cosa vorrò verificarla già subito.

:) Buona serata.
 
L

LuigiB

Guest
certo Joe , se ti riferisci a quando avevamo parlato di Ini +1 forse avevo capito male la domanda.
Ripeto lo script per come l'avevo interpretato per frequenza interpreta e conteggia gli sfaldamenti delle righe non quanti numeri cadono ad ogni estrazione.

Ciao Legend certoche li lascio ma vedrai che cambiano di molto poco ..
 

Joe91

Advanced Member >PLATINUM PLUS<
No Title

Ciao Luigi.

Si certamente è sul +1 ... ma non è solo quello.

Una prima conferma c'è buona-buona,

Come da immagine ho allineato il rendiconto del tuo script.

Però prima di esporre "il come" voglio verificara ancora delle cose.

Intanto potrebbe essere anche utile il parere di I legend

che essendosi fatto carico di capire l'uno e l'altro script ...

forse ha colto le differenze che sto cercando di confermare.

:) Buona serata a tutte/i.
 

Allegati

  • photo13463.jpg
    photo13463.jpg
    46,6 KB · Visite: 36
L

LuigiB

Guest
Aspetta non confondiamo il povero Legend .. a ben guardare mi sono accorto di una cosa.
Lo script precedente a questo ultimo che avevo postato fa esattamente come ti ho detto ovvero per sfaldamento conteggia sempre 1 a prescindera da quanti numeri siano caduti nella stessa estr.
Questo ultimo script invece non fa come ho detto ed è un errore perche volevo lo facesse.
Questo ultimo script ineffetti conteggia +1 per ogni numero caduto al tale ritardo.
Pure io mi riservo di controllare meglio questo ultimo script .. ci si sente domani ...
 
L

LuigiB

Guest
Ciao Joe , allora alla luce delle tue ossservazioni specie del messaggio 74 mi sono accorto che lo script come avevi detto anche tu calcolava male le frequenze.

ora questo nuovo script che posto penso sia corretto , esso gestisce opzionalmente il calcolo della frequenza sia conteggiando +1 per ogni numero caduto sia conteggiando una sola volta il rigo sfaldato (anche se su questo cadono piu di 1 numero contemporaneamente).
Quindi con la prima opzione ammettendo di conteggiare una sola estrazione e che in questa estrazione ci siano 3 numeri caduti a ritardo differente e 2 a ritardo uguale la somma delle frequenze delle righe interessate darà 5 , mentre con l'opzione 2 dara 4.


Quindi facciamo tabula rasa di tutti i risutati esposti dagli script precedenti e vediamo se è corretto quest'ultimo che posto.
Confido nelle tue verifiche :) Ciao

Codice:
Option Explicit
Dim cIdRit,cIdRitMax,cIdFreq,cMaxRigo
Sub Main
    Dim Ini,Fin
    Dim r,k,e,n,nRit,nSfald,bMostraSoloRigheConNumeri
    Dim aBRuote
    ReDim aRt(1)
    ReDim aNumRuota(5)
    Dim aBNumRuota
    Dim nTipoCalcFrq
    Dim T
    If MsgBox("Mostrare solo le righe  alla cui posizione nel tab analitico sono effettivamente presenti dei numeri ?",vbQuestion + vbYesNo) = vbYes Then
        bMostraSoloRigheConNumeri = True
    End If
    nTipoCalcFrq  = scegliTipoCalcFrq
    
    Call ScegliRuote(Nothing,aBRuote)
    cMaxRigo = 250
    cIdRit = 0
    cIdRitMax = 1
    cIdFreq = 2
    T = Timer
    ReDim aRitPerRigo(cMaxRigo,12,2)
    Ini = EstrazioneIni
    Fin = EstrazioneFin
    For r = 1 To 12
        If r <> 11 Then
            If aBRuote(r) Then
                ReDim aN(90)
                aRt(1) = r
                Call GetRitardoEstratti(aRt,Ini-1,aN)
                For k = Ini To Fin
                    Call GetArrayNumeriRuota(k,r,aNumRuota)
                    ReDim aBRit(cMaxRigo)
                    If aNumRuota(1) > 0 Then
                        For nRit = 0 To cMaxRigo
                            aRitPerRigo(nRit,r,cIdRit) = aRitPerRigo(nRit,r,cIdRit) + 1
                        Next
                        For e = 1 To 5
                            nRit =(aRitPerRigo(aN(aNumRuota(e)),r,cIdRit) - 1)
                            If nRit > aRitPerRigo(aN(aNumRuota(e)),r,cIdRitMax) Then
                                aRitPerRigo(aN(aNumRuota(e)),r,cIdRitMax) = nRit
                            End If
                            If nTipoCalcFrq  =0 Then
                                
                                
                                aRitPerRigo(aN(aNumRuota(e)),r,cIdRit) = 0
                                aRitPerRigo(aN(aNumRuota(e)),r,cIdFreq) = aRitPerRigo(aN(aNumRuota(e)),r,cIdFreq) + 1
                            
                            Else
                                If Not aBRit(aN(aNumRuota(e))) Then
                                    aBRit(aN(aNumRuota(e))) = True
                                    aRitPerRigo(aN(aNumRuota(e)),r,cIdRit) = 0
                                    aRitPerRigo(aN(aNumRuota(e)),r,cIdFreq) = aRitPerRigo(aN(aNumRuota(e)),r,cIdFreq) + 1
                                End If
                            End If
                            
                        Next
                        aBNumRuota = ArrayNumeriToBool(aNumRuota)
                        For n = 1 To 90
                            If aBNumRuota(n) Then
                                aN(n) = 0
                            Else
                                aN(n) = aN(n) + 1
                            End If
                        Next
                    End If
                Next
            End If
        End If
        Call AvanzamentoElab(1,12,r)
    Next
    Scrivi "Tempo Elab : " & Timer - T
    
    T = Timer
    Call GestioneOutput(Ini,Fin,bMostraSoloRigheConNumeri,aBRuote,aRitPerRigo)
    Scrivi "Tempo crea tabella : " & Timer - T

End Sub
Sub GestioneOutput(Ini,Fin,bMostraSoloRigheConNumeri,abRuote,aRitPerRigo)
    Dim r,k,e,n,sNum,bValida,qNum,nFatte,qRuote
    nFatte = Fin -(Ini)
    ReDim aV(18)
    aV(1) = "Rigo"
    aV(2) = "Ritardo"
    aV(3) = "RitardoMax"
    aV(4) = "Frequenza"
    aV(5) = "Ru"
    aV(6) = "Numeri"
    aV(7) = "IC"
    aV(8) = "QR"
    aV(9) = "QT"
    aV(10) = "QR-QT"
    aV(11) = "A"
    aV(12) = "QRRu"
    aV(13) = "QTRu"
    aV(14) = "QRRu -QTRu"
    aV(15) = "ARu"
    aV(16) = "PT"
    aV(17) = "Freq-PT"
    aV(18) = "A"
    



    ReDim aPresTotPerRigo(cMaxRigo)
    Call GeneraAnaliticoTurbo(Fin)
    For r = 1 To 12
        If abRuote(r) Then qRuote = qRuote + 1
    Next
    For k = 0 To cMaxRigo
        For r = 1 To 12
            If abRuote(r) Then
                If r <> 11 Then
                    For e = 1 To 5
                        n = TabelloneAnaliticoTurbo(k,r,e)
                        If n > 0 Then
                            aPresTotPerRigo(k) = aPresTotPerRigo(k) + 1
                        End If
                    Next
                End If
            End If
        Next
    Next
    Messaggio "Creazione tabella"
    DoEventsEx
    Call InitTabella(aV)
    For r = 1 To 12
        If r <> 11 And abRuote(r) Then
            For k = 0 To cMaxRigo
                aV(1) = k
                aV(2) = aRitPerRigo(k,r,cIdRit)
                aV(3) = aRitPerRigo(k,r,cIdRitMax)
                aV(4) = aRitPerRigo(k,r,cIdFreq)
                aV(5) = NomeRuota(r)
                sNum = ""
                qNum = 0
                For e = 1 To 5
                    n = TabelloneAnaliticoTurbo(k,r,e)
                    If n > 0 Then
                        qNum = qNum + 1
                        sNum = sNum & n & "."
                    End If
                Next
                sNum = RimuoviLastChr(sNum,".")
                bValida = False
                If bMostraSoloRigheConNumeri Then
                    If sNum <> "" Then bValida = True
                Else
                    bValida = True
                End If
                If bValida Then
                    aV(6) = sNum
                    aV(7) = Round(Dividi(aRitPerRigo(k,r,cIdRit),Dividi(nFatte,aRitPerRigo(k,r,cIdFreq))),3)
                    aV(8) = qNum
                    aV(9) = Round(GetPresTeo(k,1),3)
                    aV(10) = Round(qNum - aV(9),3)
                    aV(11) = Round(Dividi(qNum,(qNum + CDbl(aV(9)))),3)
                    
                    aV(12) = aPresTotPerRigo(k)
                    aV(13) = Round(GetPresTeo(k,qRuote),3)
                    aV(14) = Round(aPresTotPerRigo(k) - aV(13),3)
                    aV(15) = Round(Dividi(aPresTotPerRigo(k),(aPresTotPerRigo(k) + CDbl(aV(13)))),3)
                    aV(16) = Round(PresenzeTeoriche(k + 1,nFatte,1),3)
                    aV(17) = Round(aRitPerRigo(k,r,cIdFreq) - aV(16),3)
                    aV(18) = Round(Dividi(aRitPerRigo(k,r,cIdFreq),(aRitPerRigo(k,r,cIdFreq) + CDbl(aV(16)))),3)
                    
                    

                    
                    
                    Call AddRigaTabella(aV)
                End If
            Next
        End If
    Next
    Call Scrivi("Inizio : " & GetInfoEstrazione(Ini))
    Call Scrivi("Fine   : " & GetInfoEstrazione(Fin))
    Call SetTableWidth("100%")
    Call CreaTabellaOrdinabile(2)
End Sub
Function GetPresTeo(Rit,qRuote)
    GetPresTeo = 5* qRuote *(17/18)^Rit
End Function
Function PresenzeTeoriche(Ritardo,Estrazioni,Ruote)
    ' funzione by Joe
    Dim P,Q
    Dim Att,Pre
    P = 5 * Ruote ' Estratti
    Q = 17/18 ' Probabilità Contraria
    Att = 1 - Q^Ritardo 'Attuale
    Pre = 1 - Q^(Ritardo - 1)'Precedente
    PresenzeTeoriche =(P*Estrazioni*(Att - Pre))
End Function

Function scegliTipoCalcFrq
    Dim aV
    aV = Array ("Incrementa per ogni caduta" ,"Incrementa allo sfaldamento del rigo")
    
    scegliTipoCalcFrq  = ScegliOpzioneMenu (aV , 0)
End Function
 

Joe91

Advanced Member >PLATINUM PLUS<
LuigiB;n1997706 ha scritto:
Aspetta non confondiamo il povero Legend .. a ben guardare mi sono accorto di una cosa.
Lo script precedente a questo ultimo che avevo postato fa esattamente come ti ho detto ovvero per sfaldamento conteggia sempre 1 a prescindera da quanti numeri siano caduti nella stessa estr.
Questo ultimo script invece non fa come ho detto ed è un errore perche volevo lo facesse.
Questo ultimo script ineffetti conteggia +1 per ogni numero caduto al tale ritardo.
Pure io mi riservo di controllare meglio questo ultimo script .. ci si sente domani ...


Ok ... facciamo un punto fermo come riferimento ... anche per evitare possibili incomprensioni.

Io qui di seguito mi riferisco al tuo script cioè quello per una sola ruota

presente al messaggio #65 ed al mio, che ti ho proposto al messaggio #76.

I controlli che ho fatto con essi per la ruota Nazionale come ho proposto ieri sera,

al messaggio #86 sono stati confermati adesso identici a quelli prodotti da L8,

a parità di intervallo di estrazioni 7440-7449.

Cioè per le prime 10 estrazioni della Nazionale.

Ovvero ancora ... il tuo script modificato, il mio, ed L8

così calcolerebbero tutti e 3 nello stesso identico modo.

Ora prima di considerare questa tua nuova proposta di conteggio ...

quella più orientata a far soggetto, il rigo, piuttosto che,

il lottrone (i lottroni) che casualmente vi transita (transitano).

Vorrei ancora cercare di dare una mia interpretazione del perchè

e del come ho modificato il tuo script.

Ovvero ... la ragione per cui, già ora, senza queste avremmo (o avremo) 2 risultati differenti.

Ci possono essere 2 considerazioni relative al formarsi del Tabellone Analitico.

Una PRIMA CERCA DI COSTRUIRE UNA SITUAZIONE ad una determinata estrazione

ed E' L'IPOTESI DEL TUO SCRIPT NON MODIFICATO.

Una seconda considera NULLA ... qualsiasi cosa eventualmente sia già avvenuta ...

ed INIZIA a conteggiare "DA ZERO".

QUESTO è quanto qui "detto" e succederebbe nei tre programmi ... resi alllineati.

Perchè ho controllato partendo dalla Nazionale?

Semplice. Perchè essa è la ruota che non una storia pregressa.

Poio sono passato a controllare tutte le rimanenti altre 10 ruote.

Dunque le modifiche principali al tuo script (che elenco

ma non propongo in script prima di aver letto le tue/vostre considerazioni)

sarebbero piuttosto semplici ...eliminare la ricostruzione dei ritardi iniziali.

Iniziare la costruzione del Tabellone Analitico con i relativi conteggi ... da Zero

Partendo a conteggiare da Es = EstrazioneInizio.

Naturalmente è modifica molto semplice perchè lo script conteggia

già da sè gli estratti caduti nel rigo, e le poche, altre, modifiche

sono di poco conto, quasi solo estetiche e/o per praticità.

:) Cordiali saluti a tutte/i.



PS: Ok .. non tormento Ilegend.

Però ci fosse qualcuno che ha l'altro programma citato tra i primi messaggi ...

sarebbe gradito ed importante avere un riscontro, su come esso interpreta e calcola

questi dati statistici.

Dunque ringrazio sin d'ora chi vorrà aiutarci a completando ed integrando con essi, questo confronto.
 
Ultima modifica:
L

LuigiB

Guest
ciao Joe non so se hai visto il mio messaggio di stamattna.
Riferiamoci allo script di cui al mess 88
 

Joe91

Advanced Member >PLATINUM PLUS<
Leggo il tuo mesaggio (#88 CHE NON ERA PRESENTE)

e se necesario ... rispondo nel merito. cerco di completare la risposta.

Grazie.

:) Giao.
 

Joe91

Advanced Member >PLATINUM PLUS<
No Title

Ok ... confermo quanto avevo scritto.

La differenza che è ancora presente è quella relativa al come si forma il Tabellone Analitico.

All'estrazione 7440 della Nazionale (ove non c'è storia pregressa)

i conteggi sono esatti o meglio coincidenti.

Se si iniziasse ad 8000 o a 9000 sarebbero e sono un pochino diversi.

:) Cordiali saluti.
 

Allegati

  • photo13469.jpg
    photo13469.jpg
    77 KB · Visite: 36
L

LuigiB

Guest
ciao Joe , verissimo il mio script parte calcolando lo stato del tab analitico alla prima estrazioen del range di analisi.
Fare le opportune modifiche per cambiare questo comportamento come hai detto qualche mess fa è banale ..

saluti a tutti
 

Joe91

Advanced Member >PLATINUM PLUS<
Ciao trivellato.

Grazie per il materiale che hai aggiunto.

Ci sono molte cose già viste ed alcune più particolari, nuove, non convenzionali.

Potrebbe essere facilmente aggiunta la formula citata per la proiezione.

Per ora, non avendola mai codificata e provata ... non saprei quantificarne l'utilità.

Quindi in ogni caso subordinerei l'aggiungerla al verificarne prima l'efficacia.

:) Grazie, ancora, sperando in futuro di poterla aggiungere.
 
Ultima modifica:

micro__

Advanced Member >PLATINUM<
Una cortesia LuigiB, lo script di cui # 88 mi dà questo errore e solo quando seleziono la ruota Nazionale:

nRit =(aRitPerRigo(aN(aNumRuota(e)),r,cIdRit) - 1)

ti è possibile farmi sapere se sbaglio io o cosa c'è che non va?

GRazie!!
micro
 

Ultima estrazione Lotto

  • Estrazione del lotto
    giovedì 18 aprile 2024
    Bari
    13
    39
    14
    70
    78
    Cagliari
    67
    65
    03
    87
    63
    Firenze
    85
    90
    19
    67
    78
    Genova
    60
    81
    39
    33
    13
    Milano
    90
    01
    83
    11
    88
    Napoli
    18
    12
    80
    29
    19
    Palermo
    50
    83
    40
    24
    12
    Roma
    74
    48
    75
    65
    37
    Torino
    80
    46
    44
    27
    30
    Venezia
    70
    16
    72
    03
    89
    Nazionale
    89
    22
    06
    87
    13
    Estrazione Simbolotto
    Genova
    28
    21
    43
    25
    17
Alto