LottoGAM Forum

VENUS: PRIMA E DOPO 14.09.2009

« Older   Newer »
  Share  
view post Posted on 27/9/2023, 17:31
Avatar

Top Member

Group:
Member
Posts:
559

Status:


Ciao Matteo devi anche intenderti di script in quanto questo script e verifica io non te lo postata.
Comunque la raccolta è corretta anche con le mie controverifiche.
aspettiamoli al varco la loro sortita. :D :b:

ti metto lo script della mia controverifica senza spoiler

Sub Main
Dim Nu(3),Mat(118000,5)
Ini = EstrazioneFin - 400
fin = EstrazioneFin
Scrivi " N." & Space(10) & "Ruote" & Space(7) & "Terzine" & Space(6) & "Rit.Corr" & Space(6) & "Verifica",1
ReDim Ru(0)
ScegliRuote(Ru)
ResetTimer
'For r = 1 To 10
'If r = 1 Or r = 6 Or r = 7 Then
For n1 = 1 To 88
For n2 = n1 + 1 To 89
For n3 = n2 + 1 To 90
Nu(1) = n1 : Nu(2) = n2 : Nu(3) = n3 ': Ru(1) = r
If SerieRitardoTurbo(Ini,fin,Nu,Ru,3) < 300 Then
Call StatisticaFormazioneTurbo(Nu,Ru,2,rit,max,Incr,fre,Ini,fin)
If rit > 200 Then
k = k + 1
Call VerificaEsitoTurbo(Nu,Ru,fin - rit,2,1,,,,esa,id)
Call Messaggio("Trovati.... " & k & Space(10) & TempoTrascorso)
Call AvanzamentoElab(1,40,k)
Mat(k,1) = k
Mat(k,2) = SiglaRuota(r)
Mat(k,3) = StringaNumeri(Nu,"-",1)
Mat(k,4) = rit
Mat(k,5) = " - " & esa
Scrivi k & vbTab & StringaRuote(Ru) & vbTab & StringaNumeri(Nu,,1) & vbTab & rit & vbTab & esa
End If
End If
Next
Next
If ScriptInterrotto Then Exit For
Next
Scrivi
Scrivi TempoTrascorso,1
Scrivi "---------------------- Elenco Ordinato per Ritardo --------------------------",1
'End If
'Next
OrdinaMatrice Mat,- 1,4
ScriviMatrice Mat
Scrivi TempoTrascorso,1
End Sub


ciao
 
Top
view post Posted on 27/9/2023, 20:40

Top Member

Group:
Member
Posts:
3,911

Status:


Ciao Mike,
con gli script molto spesso svolgo ricerche di ogni tipo, ma di solito dal punto di vista statistico.

Comunque con il tuo script non ho fatto nessuna fatica, ho solo impostato la ricerca per ritardi correnti maggiori di 250, il resto l'ho lasciato uguale.
Ho aspettato circa 6 minuti e poi il tuo script ha regalato la tabella complessiva, l'ho esportata in excel ed ho selezionato dalla colonna "Verifica Ruota Venus" le celle vuote, cioè le uniche terzine in attesa ancora su tutte le ruote di ciascuna sede.

Di script purtroppo non sono in grado di farne neanche un rigo, però se devo fare pochi ritocchi alle date, alle ruote, ai valori dei ritardi riesco anch'io, aiutato soprattutto dall'abitudine a leggere i dati che gli script mi danno.

Anche questo secondo tuo script ha ottimi pregi, soprattutto per la velocità con cui ricava gli attuali e quindi avere il quadro complessivo sotto controllo.

Del primo script però ho notato una cosa strana: se lo utilizzo con fine archivio ad esempio al concorso 9000 con gli stessi criteri di rpima con ritardi correnti maggiori di 280 non riesce a darmi nulla e mi esce questo messaggio:

dsTableHtmLd.AddRiga

7-Memoria esaurita

Poi devo troncare Spaziometria e farlo ripartire, ma la ricerca non la fa.

Era mia intenzione fare alcuni saggi a ritroso, ma non sono riuscito a trovare nello script la soluzione che mi permetta di farlo: sarà qualche piccola cosa, che io non vedo.

Mentre stavo scrivendo questo messaggio ho fatto al riguardo altri tentativi con periodi diversi dell'archivio e mi capita che alcune volte fa quello che deve altre volte no: mistero per me.

Infine ho già detto in Bacheca, rispondendo a Gam, che magicamente ho risolto il problema spoiler, senza capire come sia successo.

Ti ringrazio per l'ottimo lavoro che hai svolto ed auguro a tutti una buona serata, ciao
Matteo
 
Top
view post Posted on 28/9/2023, 07:55
Avatar

Top Member

Group:
Member
Posts:
559

Status:


Ciao Matteo ti auguro una buona giornata.

Sono anche contento che almeno sai leggere i listati e modificarli nel piccolo, dico anche che chi vuole ed è appassionato di ricerche ludologiche dovrebbe imparare a mettere insieme i codici per raggiungere i propri scopi.

L'errore che riscontri potrebbe voler dire che trova le migliaia di combinazioni che dicevo in altri scritti e che la tabella non li sopporta nonchè la memoria ram anche essa non li sopporta.

Essendo i casi diversi per ricerca a volte non tutti i costrutti o modus operandi si prestano allo scopo e quindi è doveroso ricercare un algoritmo migliore, ma questo è anche il bello della passione scriptiica.

Bene anche per lo spoiler risolto e ottime come sempre le tue ricerche.

Ciao
 
Top
view post Posted on 28/9/2023, 10:55

Top Member

Group:
Member
Posts:
3,911

Status:


Ciao Mike,
tutto vero quello che dici.
Vorrei sottoporre alla tua attenzione uno dei tentativi che ho fatto con il tuo primo script.
Le impostazioni sono:

fin = EstrazioneFin - 1
fine = EstrazioneFin
Classe = CInt(3)
sorte = CInt(2)
ritmaxx = CInt(400)
nClasse = Classe
ResetTimer
T = Array(T,"kk","Terne","Rit Corr","Rit Max","IncrMax","Fre","verifica 1","Verifica Ruota Venus","Colpo")
Call InitTabella(T)
For r = 6 To 7

In pratica ho cambiato solo il Cint e le ruote scelte.

Lo script mi ha dato tra tutte le altre questa formazione

1549 17.25.82 477 540 0 28 PA 25 .. .. 17 82 BA .. .. 17 .. 82 677

Come vedi c'è un max storico di 677 che mi ha fatto sobbalzare dalla sedia.

Con Spaziometria ho trovato queste due sortite

165 07654 - 30/09/2006 Palermo 47.17.82.41.80 17 Ambo 17 82
166 08331 - 27/01/2011 Bari 15.12.17.05.82 676 Ambo 17 82

Come vedi si tratta di due sortite successive di solo ambo, nell'estrazione precedente non era sortito il terno, quindi non si tratta di un ritardo della terzina sincrona, perchè non lo era.

Ieri ne avevo trovato un altro caso simile, ma poi non sono più riuscito a ritrovarla e mi è sfuggita.

Sono contento per il fatto che quel ritardo non c'è stato, però forse nelle estrazioni a ritroso c'è qualcosa che non va.

Continuerò ad indagare per capire dove possa esserci l'errore.
Sempre grazie di tutto e ciao a tutti,
Matteo
 
Top
view post Posted on 28/9/2023, 11:45
Avatar

Top Member

Group:
Member
Posts:
559

Status:


Matteo , nel simulare la tua verifica non trovo i tuoi dati.
Bisogna prestare attenzione quando si modifica uno script nel modificare anche tutti i dati ad esso collegati.
ora va bene modificare i Parametri Filtro, i Parametri Ruote, ma poi bisogna modificare anche la verifica simulazione ruote Venus, (magari non hai modificato quello)
'------------estrapola ruota venus ---------------------
'If r = 1 Then rr = Array(0,1,6,7)
'If r = 2 Then rr = Array(0,2,3,8,12)
'If r = 3 Then rr = Array(0,2,3,8,12)
'If r = 4 Then rr = Array(0,4,5,9,10)
'If r = 5 Then rr = Array(0,4,5,9,10)
If r = 6 Then rr = Array(0,6,7)
If r = 7 Then rr = Array(0,6,7)
'If r = 8 Then rr = Array(0,2,3,8,12)
'If r = 9 Then rr = Array(0,4,5,9,10)
'If r = 10 Then rr = Array(0,4,5,9,10)

nel caso di ruote 6,7 la venus sarà composta da 6,7

Altro non saprei.

Ciao
 
Top
view post Posted on 28/9/2023, 14:37

Top Member

Group:
Member
Posts:
3,911

Status:


Ciao Mike,
qui è cascato l'asino, il mio scopo era di limitare i campi di ricerca in modo che lo script mi desse tutti i dati, però non sapevo nulla di quello che hai detto tu e sono cascato.
Ora non compare più quella formazione.
A questo punto io vorrei utilizzare il tuo script uno per ogni compartimento per cercare di ricavare più formazioni possibili:

1) uno script per BA-NA-PA
2) uno script per CA-FI-RO-NZ
3) uno script per GE-MI-TO-VE

Come dovrei cambiare le impostazioni?
Sempre perfetto!
Grazie e ciao a tutti,
Matteo
 
Top
view post Posted on 28/9/2023, 14:58
Avatar

Top Member

Group:
Member
Posts:
559

Status:


Matteo,i suggerimenti ci sono ma bisogna vedere bene ed in quale scopo.

se vuoi ruote separate con richiamo poi venus, si potrebbe fare così
ciclo le ruote e abilito la venus che mi interessa

Sub Main
Dim R
For R = 1 To 12
If R = 11 Then R = 12
'------------------------------------------------------------
If R = 1 Or R = 6 Or R = 7 Then ' Venus SUD
'If R = 4 Or R = 5 Or R = 9 Or R = 10 Then ' Venus NORD
'If R = 2 Or R = 3 Or R = 8 Or R = 12 Then ' Venus CENTRO
'------------------------------------------------------------
Scrivi SiglaRuota(R)
End If
Next
End Sub


questo è un esempio ma si può fare anche in altri modi, ma è il più semplice per farlo interagire con lo script in questione.

Invece se vuoi raggruppare le ruote e suddividerle in questo caso per Venus
altro esempio
Sub Main
Dim ruote
scelta = InputBox("Scelta Ruote" & Chr(13) & Chr(13) & "1 - VenusNord" & Chr(13) & "2 - VenusSud" & Chr(13) & "3- VenusCentro",,1)
'-------------------------------------------------
nord = Array(nord,5,4,9,10)
sud = Array(sud,6,1,7)
centro = Array(centro,8,2,3,12)
'-------------------------------------------------
If scelta = 1 Then ruote = nord
If scelta = 1 Then Venus = "VenusNord Milano"
If scelta = 2 Then ruote = sud
If scelta = 2 Then Venus = "VenusSud Napoli"
If scelta = 3 Then ruote = centro
If scelta = 3 Then Venus = "VenusCentro Roma"
'..................................................
Scrivi StringaRuote(ruote) & " - Hai scelto " & venus

End Sub
 
Top
view post Posted on 28/9/2023, 16:30

Top Member

Group:
Member
Posts:
3,911

Status:


Ciao Mike,
grazie ancora per il tuo impegno e la tua disponibilità.
Lo scopo di questi miei tentativi è quello di arrivare ad individuare il massimo storico per la sortita dell'ambo con una terzina sincrona sortita su una delle ruote del compartimento per la risortita su una delle stesse ruote.
A me non interessa la singola ruota, ma la risortita su una qualsiasi delle ruote dello stesso compartimento.

A questo scopo mi basterebbe il tuo primo script spezzettando l'archivio dal 14-09-2009 andando avanti a pezzetti d'archivio fino ad oggi.
Il problema però è nel fatto che essendo troppe le formazioni lo script ha difficoltà a darmi la situazione di tutte le terzine di tutte le 10 ruote dicendomi che la memoria è esaurita
Per questo avevo pensato a dividere la ricerca ad un compartimento per volta, così come è possibile fare con il tuo secondo script, che mi permette di scegliere le ruote di volta in volta.

Credo che quella giusta dovrebbe essere la prima soluzione che tu hai prospettato.
Vediamo come va, ciao e grazie
Matteo
 
Top
view post Posted on 28/9/2023, 17:11
Avatar

Top Member

Group:
Member
Posts:
559

Status:


Se Cerchi su esempio Ruota Venus SUD

la ricerca deve essere fatta sempre con ciclo for
for R = 1 to 10
e con la condizione if filtriamo le ruote che vogliamo analizzare
if R = 1 or R = 6 or R = 7 then

In questo modo fai la ricerca su una ruota della venus interessata e allo stesso tempo fai la verifica sulle stesse ruote filtrate.
Prova a vedere se ottieni il risultato voluto, altrimenti se capisco meglio e con altri esempi si può anche cambiare costrutto scriptico e vedere se si migliorano i tempi di elaborazione.

Ciao
 
Top
view post Posted on 28/9/2023, 18:17

Top Member

Group:
Member
Posts:
3,911

Status:


Ciao Mike,
l'hai detto troppo presto che m'intendo di script.
Per non sbagliare ho preso il tuo script originale dal tuo post

Ho incollato la tua riga subito dopo 'estrapola ruota venus ' in questo modo, però mi dà errore alla linea 57 errore 1038 'loop' senza 'do'

Imbranato, non c'è che dire, scusami e grazie ancora,
Matteo

Sub Main
Dim Ru(1),Terne(3),aN(90),aCol,T,V
Dim nClasse
Ini = 3950'EstrazioneIni
fin = EstrazioneFin - 1
fine = EstrazioneFin
Classe = CInt(3)
sorte = CInt(2)
ritmaxx = CInt(1000)
nClasse = Classe
ResetTimer
T = Array(T,"kk","Terne","Rit Corr","Rit Max","IncrMax","Fre","verifica 1","Verifica Ruota Venus","Colpo")
Call InitTabella(T)
For r = 1 To 10
Ru(1) = r
For k = 1 To 90
aN(k) = k
Next
nCol = InitSviluppoIntegrale(aN,nClasse)
k = 0
Do While GetCombSviluppo(aCol)
k = k + 1
Terne(1) = aCol(1)
Terne(2) = aCol(2)
Terne(3) = aCol(3)
If Terne(1) <> Terne(2) And Terne(2) <> Terne(3) Then
sf = SerieRitardoTurbo(Ini,fin,Terne,Ru,sorte)
If sf > ritmaxx Then
kk = kk + 1
Call Messaggio("Elaboro Terne per Ambo " & TempoTrascorso)
Call AvanzamentoElab(1,90,kk)
Call StatisticaFormazioneTurbo(Terne,Ru,sorte,rit,max,Incr,fre,Ini,fin)
'If rit > ritmaxx Then
Call VerificaEsitoTurbo(Terne,Ru,fin - rit,3,,,esito,,esa,ida)
Call VerificaEsitoTurbo(Terne,Ru,fine,sorte,,,,,esb,idb)
If esito <> "" Then
kkk = kkk + 1
'------------estrapola ruota venus ---------------------
If R = 1 Or R = 6 Or R = 7 Then
If r = 2 Then rr = Array(0,2,3,8,12)
If r = 3 Then rr = Array(0,2,3,8,12)
If r = 4 Then rr = Array(0,4,5,9,10)
If r = 5 Then rr = Array(0,4,5,9,10)
If r = 6 Then rr = Array(0,1,6,7)
If r = 7 Then rr = Array(0,1,6,7)
If r = 8 Then rr = Array(0,2,3,8,12)
If r = 9 Then rr = Array(0,4,5,9,10)
If r = 10 Then rr = Array(0,4,5,9,10)
'spp = SeriePrima(fin-rit+1,fin,Terne,rr,2)
Call VerificaEsitoTurbo(Terne,rr,fin - rit + 1,2,,,,clp,essa,idss)
V = Array(V,kkk,StringaNumeri(Terne),rit + 1,max + 1,Incr,fre,esa,essa,clp)
Call AddRigaTabella(V)
End If
End If
'Loop
End If
Loop
Next
Call CreaTabella(3)
Scrivi TempoTrascorso
End Sub
 
Top
view post Posted on 28/9/2023, 19:12
Avatar

Top Member

Group:
Member
Posts:
559

Status:


Matteo, quando si apre un ciclo for Do If , va chiuso alla giusta riga con next loop if.
Nel tuo caso avendo messo if al posto sbagliato era penalizzata la chiusura Loop.

Metto lo script corretto co tabella ordinabile per facile export su excel
Sub Main
Dim Ru(1),Terne(3),aN(90),aCol,T,V
Dim nClasse
Ini = 3950'EstrazioneIni
fin = EstrazioneFin - 1
fine = EstrazioneFin
Classe = CInt(3)
sorte = CInt(2)
ritmaxx = CInt(1000)
nClasse = Classe
ResetTimer
T = Array(T,"kk","Terne","Rit Corr","Rit Max","IncrMax","Fre","verifica 1","Verifica Ruota Venus","Colpo")
Call InitTabella(T)
For r = 1 To 10
If R = 1 Or R = 6 Or R = 7 Then ' la riga venus va messa qua
Ru(1) = r
For k = 1 To 90
aN(k) = k
Next
nCol = InitSviluppoIntegrale(aN,nClasse)
k = 0
Do While GetCombSviluppo(aCol)
k = k + 1
Terne(1) = aCol(1)
Terne(2) = aCol(2)
Terne(3) = aCol(3)
If Terne(1) <> Terne(2) And Terne(2) <> Terne(3) Then
sf = SerieRitardoTurbo(Ini,fin,Terne,Ru,sorte)
If sf > ritmaxx Then
kk = kk + 1
Call Messaggio("Elaboro Terne per Ambo " & TempoTrascorso)
Call AvanzamentoElab(1,90,kk)
Call StatisticaFormazioneTurbo(Terne,Ru,sorte,rit,max,Incr,fre,Ini,fin)
'If rit > ritmaxx Then
Call VerificaEsitoTurbo(Terne,Ru,fin - rit,3,,,esito,,esa,ida)
Call VerificaEsitoTurbo(Terne,Ru,fine,sorte,,,,,esb,idb)
If esito <> "" Then
kkk = kkk + 1
'------------estrapola ruota venus ---------------------
If r = 1 Then rr = Array(0,1,6,7)
If r = 2 Then rr = Array(0,2,3,8,12)
If r = 3 Then rr = Array(0,2,3,8,12)
If r = 4 Then rr = Array(0,4,5,9,10)
If r = 5 Then rr = Array(0,4,5,9,10)
If r = 6 Then rr = Array(0,1,6,7)
If r = 7 Then rr = Array(0,1,6,7)
If r = 8 Then rr = Array(0,2,3,8,12)
If r = 9 Then rr = Array(0,4,5,9,10)
If r = 10 Then rr = Array(0,4,5,9,10)
'spp = SeriePrima(fin-rit+1,fin,Terne,rr,2)
Call VerificaEsitoTurbo(Terne,rr,fin - rit + 1,2,,,,clp,essa,idss)
V = Array(V,kkk,StringaNumeri(Terne),rit + 1,max + 1,Incr,fre,esa,essa,clp)
Call AddRigaTabella(V)
End If
End If
'Loop
End If
Loop
End If
Next
Call CreaTabellaOrdinabile()
Scrivi TempoTrascorso
End Sub
 
Top
view post Posted on 28/9/2023, 20:00

Top Member

Group:
Member
Posts:
3,911

Status:


Ciao Mike,
dopo quest'altra lezione il mio conto da pagare sale ancora; grazie ancora, non ci sarei mai arrivato.
Poi seguiranno i commenti, ciao a tutti
Matteo
 
Top
view post Posted on 28/9/2023, 20:06
Avatar

Top Member

Group:
Member
Posts:
559

Status:


Prova questo script, Cazzeggiando mi è venuto cosi prova a vedere se in qualche maniera è utile.

Sub Main
' per Matteo lottogam
Dim Nu(3),T
Ini = EstrazioneFin - 400
fin = EstrazioneFin
Tot = fin - Ini + 1
T = Array(T,"k","Ruote","Terno","Rit_Terno","verifica_Terno","Id","Rit_Ambo","Verifica_Ambo","Colpo","id")
Call InitTabella(T)
ReDim Ru(0)
ScegliRuote(Ru)
ResetTimer
For n1 = 1 To 88
For n2 = n1 + 1 To 89
For n3 = n2 + 1 To 90
Nu(1) = n1 : Nu(2) = n2 : Nu(3) = n3 ': Ru(1) = r
srr = SerieRitardoTurbo(Ini,fin,Nu,Ru,3)
If srr < Tot Then
Call StatisticaFormazioneTurbo(Nu,Ru,2,rit,max,Incr,fre,Ini,fin)
If rit > 200 Then
k = k + 1
Call VerificaEsitoTurbo(Nu,Ru,fin - srr,3,1,,,,esB,idB)
Call VerificaEsitoTurbo(Nu,Ru,fin - srr+1,2,Tot,,,clp,esa,id)
Call Messaggio("Trovati.... " & k & Space(10) & TempoTrascorso)
Call AvanzamentoElab(1,100,k)
T = Array(T,k,StringaRuote(Ru),StringaNumeri(Nu),srr,esB,idb,rit,esa,clp,id)
Call AddRigaTabella(T)
End If
End If
Next
Next
If ScriptInterrotto Then Exit For
Next
Scrivi"Range Estrazione Inizio..... " & GetInfoEstrazione(Ini)
Scrivi"Range Estrazione Fine....... " & GetInfoEstrazione(fin)
Scrivi"Totali Estrazione .......... " & Tot
Scrivi "Tempo di Elaborazione : " & TempoTrascorso,1
CreaTabellaOrdinabile
End Sub
 
Top
view post Posted on 28/9/2023, 20:44

Top Member

Group:
Member
Posts:
3,911

Status:


Grande Mike,
era quello che cercavo, un mix tra il tuo primo script e la versatilità del secondo script, come ti avevo accennato prima con la scelta delle ruote.
Se i dati sono giusti è perfetto per tutto ed anche per i tempi ridottissimi, che cercavo.
Ho fatto un paio di controlli e mi sembra completissimo, ci hai messo anche gli indici id: veramente ottimo, un lavoro eccellente.
Un grazie di cuore Mike, ciao e buona serata,
Matteo

Adesso andiamo a vedere le estrazioni di questa sera.
 
Top
view post Posted on 28/9/2023, 21:17

Top Member

Group:
Member
Posts:
3,911

Status:


CITAZIONE (New Mat @ 27/9/2023, 16:43) 
Ciao a tutti,
sperando di fare contento qualcuno che ha seguito questo argomento allego tabella con le terzine attualmente più ritardate nelle sedi delle ruote dove queste terzine sono sortite:

Terne Rit Corr Rit Max IncrMax Fre verifica 1 Colpo

125 27.79.80 285 510 0 42 BA .. 27 .. 80 79 285
1207 7.84.85 268 548 0 41 NA .. 85 84 07 .. 268
28 5.38.39 266 1052 0 40 BA .. 38 05 39 .. 266
181 46.52.77 264 472 0 50 BA 52 .. 46 77 .. 264
1370 5.8.51 258 538 0 34 PA .. .. 51 05 08 258

Sperando che sia comprensibile, oggi non sono riuscito ad incollare l'immagine.
Ciao a tutti,
Matteo

Ciao a tutti,
ieri avevo detto di sperare di fare contento qualcuno postando le terzine più ritardate sulle ruote di BA-NA-PA.

Questa sera ambo 84-85 a PA con la seconda terzina più ritardata.

Chissà se qualcuno ne ha approfittato, purtroppo io no.
Ciao e buona serata a tutti,
Matteo
 
Top
87 replies since 21/9/2023, 23:18   2739 views
  Share