Novità

Per scripters esperti

lotto_tom75

Advanced Premium Member
Potreste creare uno script x spaziometria a beneficio di tutti/e che generi tutte le quartine in decina diversa generabili con i 90 numeri? :) E magari anche cinquine, sestine, settine (sempre in decina diversa). Comunque sia basterebbero le quartine. Grazie e Buona sunday a tutti/e.
 
poi ottenere la stessa cosa usando la funzione dei sistemi condizionati ed esportando poi le colonne in un file di testo.
In quartine composte da un solo numero per ogni decina abbiamo 1.260.000 combinazioni a fronte delle 2.555.190 totali.
Dovrai inserire nove colonne filtro ciascuna con i 10 numeri di una decina e su ciascuna consentire il punteggio di 0-1
Ecco comunque le quartine.
QuartineUnNumPerDecina.rar
 
poi ottenere la stessa cosa usando la funzione dei sistemi condizionati ed esportando poi le colonne in un file di testo.
In quartine composte da un solo numero per ogni decina abbiamo 1.260.000 combinazioni a fronte delle 2.555.190 totali.
Dovrai inserire nove colonne filtro ciascuna con i 10 numeri di una decina e su ciascuna consentire il punteggio di 0-1
Ecco comunque le quartine.
QuartineUnNumPerDecina.rar

Grazie 1000 luigi!!! :)

Ps: Non c'e' proprio modo di ampliare il limite di lunghette importabili nella sezione statistica formazioni registrate oltre le 30.000 attuali vero? :p

Per esempio per considerare queste quartine in decina diversa mi toccherà rimboccarmi le maniche e fare ben 42 files circa di 30.000 quartine l'uno... mentre se ad esempio si poteva arrivare a 100.000 (x3 ca rispetto le attuali) dovrei farne solo 12 di files... :)

GRAZIE ANCORA MITO

:o
 
Ultima modifica:
bhe il sistema per fare tutto insieme sarebbe passare il file di testo allo script e con la funzione statisticaformazioneturbo ricavare i vari valori statistici che ti servono.
un esempio base è questo che legge il file di testo , analizza ciascuna colonna , se il ritardo è maggiore di 500
trascrive la formazione in output

Codice:
Option Explicit
Sub Main
	Dim sFile
	Dim k,y
	Dim nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine
	sFile = ScegliFile("c:\temp",".txt" ,"QuartineUnNumPerDecina.txt")
	Inizio = 5000
	Fine = 8000
	ReDim aRuote(1)
	aRuote(1) = BA_
	nSorte = 2
	Call Messaggio("Lettura file di testo")
	ReDim aRighe(0)
	Call LeggiRigheFileDiTesto(sFile,aRighe)
	For k = 0 To UBound(aRighe)
		If aRighe(k) <> "" Then
			ReDim aNum(0)
			Call SplitByChar("." & aRighe(k),".",aNum)
			Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,Inizio,Fine)
			If RetRit > 500 Then
				Call Scrivi(aRighe(k) & " rit : " & RetRit)
			End If
		End If
		If k Mod 100 = 0 Then
			Call Messaggio("Colonna : " & k)
			If ScriptInterrotto Then Exit For
			Call AvanzamentoElab(0,UBound(aRighe),k)
		End If
	Next
End Sub
 
ECCEZIONALE!

Riesci a stupire ogni volta luigi!

sei davvero un SUPER HERO !!!!

GRAZIE GRAZIE GRAZIE!

Per quanto riguarda alcune delucidazioni al riguardo ti chiedo se possibile tre cose:

Chiarimento (1) Mettendo come parametro di inizio fine i seguenti:

Codice:
inizio = 1 '(l'estrazione del'8/1/1871)

fine = 8647 '(ovvero indicando l'ultima estrazione del 2/2/2013)

non mi trova nessuna quartina per A con ritardo maggiore di 500

come invece mi trova correttamente

sia se metto

Codice:
inizio = 5000
fine  = 8000

(come hai messo tu)

sia se metto

Codice:
inizio = 1
fine = 8000

Chiarimento (2) : Volessi considerare più ruote insieme (unite) basta che metta qualcosa del tipo:

Codice:
ReDim aRuote(2)
aRuote(1) = BA_
aRuote(2) = CA_

???


Chiarimento (3)

Questa riga

Codice:
If k Mod 100 = 0 Then

cosa significa?

:)

ANCORA GRAZIE INFINITE LUIGIB!!!
GRAZIE PER LA TUA GENTILEZZA, INGEGNO, BRAVURA, e come direbbe Eros Ramazzotti... (DI ESISTERE!!!) :o
 
Ultima modifica:
Ciao
per il primo punto c'era un errore nello script , sostituisci la riga incriminata con questa

Codice:
Call StatisticaFormazioneTurbo(aNum,aRuote,nSorte,RetRit,RetRitMax,RetIncrRitMax,RetFreq ,Inizio,Fine)
avevo dimenticato il parametro Frequenza sicche inizio e fine venivano letti male

per il secondo punto hai capito perfettamente

per il terzo punto trattasi di artifizio , tu sai che è compito del programmatore ottimizzare il codice , pertanto visto che scrivere la progressbar , il messagio , e vedere se l'utente pereme stop sono operazioni che pesan(specie le prime 2 perche sono grafiche)
allora eccolo li che gflie le facciamo fare solo ogni 100 colonne.

Mod è il modulo di un numero e restituisce il resto della divisione di un numero per un altro ad esempio si puo usare pure per verificare se un numero è pari

Codice:
if 10 Mod 2 = 0 then msgox "Numero pari"
 
aggiungo che se l'unico parametro a cui sei interessato è il ritardo ti consiglio di sostituire la riga StatisticaFormazione con
quest'altra , che fara si che lo script giri molto piu velocemente , ciao
Codice:
RetRit = RitardoCombinazioneTurbo( aRuote ,aNum ,nSorte,Fine )
 
Fantastico Luigi! Regge addirittura con 2.555.190 quartine! :D
Ho provato a strafare... e a considerare tutte le cinquine e purtroppo il colosso-del tuo-script ci ha mollato... :(:) con un bel...

filetroppopesante.jpg

Credi sia possibile caricare anche questo file di oltre 600 mb e aggirare in qualche modo l'errore? :p ***

'Notte e grazie infinite carissimo David Copperfield della Programmazione! ;)

*** In teoria ci potremmo basare sul fatto che rispetto a 2 mln di quartine si dovrebbe caricare 20 volte ca questa quantità di righe... magari a tranche di 2 mln cadauna... :o Il tempo che ci impiegherebbe per farlo non sarebbe importante. Mi rendo conto benissimo della prova extreme che si richiederebbe allo script e al programma e se ci riuscisse dovresti cambiargli pure nome tipo IRON SPAZIOMETRIA ad esempio :D
 
Ultima modifica:
ciao , non c'è motivo di leggere un file di testo con le colonne integrali quando basta svilupparle a runtime ...
 
ciao , non c'è motivo di leggere un file di testo con le colonne integrali quando basta svilupparle a runtime ...

Buongiorno GRANDISSSIMO! :)

Ti prego non mi tenere sulle spine...
Sono riuscito appena adesso con c++ a leggere il file che non si apriva nemmeno con qualsiasi editor di testo :D Però i tempi di apertura e rilevazione ritardi con il mio sistema dovrebbero essere appunto biblici... :rolleyes: La tua frase alquanto sibillina... ma che "sento" risolutiva del problema... mi affascina terribilmente... Solo non saprei come svillupparle in runtime! :p E sopratutto implementare il tutto nel tuo fantastico iron-script :o!

THANKS and GOOD DAY BIG MAN! ;)
 
Ultima modifica:
ciao Tom , ora sono in ufficio e non posso seguirti molto , nella directory dey test ci dovrebbe essere TestSviluppoIntegrale , attenzione che lo sviluppo integrale si puo fare in due modi , uno che mette tutte le colonne in memooria l'altro che le sviluppa una alla volta , a te serve quest'ultimo.
L'esempio che deviu usare è quello che usa la funzione InitSviluppoIntegrale.
All'interno del ciclo che produce le colonne lancerai la funzione di statistica sulla colonna corrente
 
ciao Tom , ora sono in ufficio e non posso seguirti molto , nella directory dey test ci dovrebbe essere TestSviluppoIntegrale , attenzione che lo sviluppo integrale si puo fare in due modi , uno che mette tutte le colonne in memooria l'altro che le sviluppa una alla volta , a te serve quest'ultimo.
L'esempio che deviu usare è quello che usa la funzione InitSviluppoIntegrale.
All'interno del ciclo che produce le colonne lancerai la funzione di statistica sulla colonna corrente

Nel mio patetico tentativo di interpretare la tua dritta ho provato così

Codice:
Sub Main
	Dim Colonne
	Dim numeri(90)
	Dim classe
	Dim sColonna
	
	classe = 5


	For k = 1 To 90
		numeri(k) = k
	Next


	Colonne =[B] InitSviluppoIntegrale[/B](numeri,classe)
	
	For k = 1 To UBound(Colonne)   '<- Cosa significa Ubound?
		sColonna = ""
		For j = 1 To classe
			sColonna = sColonna & Format2(Colonne(k,j)) & " "
		Next
		Call Scrivi(sColonna)
	Next
End Sub

Ma ovviamente eseguendolo mi da solo un gelido errore :D

E sono solo alla vana interpretazione della prima parte della tua dritta pensa te... :rolleyes:

Alla prossima dritta con tutta la calma di questo mondo carissimo
GRAZIE alla miliardesima e buon lavoro! ;)
 
Nel mio patetico tentativo di interpretare la tua dritta ho provato così

Codice:
Sub Main
	Dim Colonne
	Dim numeri(90)
	Dim classe
	Dim sColonna
	
	classe = 5


	For k = 1 To 90
		numeri(k) = k
	Next


	Colonne =[B] InitSviluppoIntegrale[/B](numeri,classe)
	
	For k = 1 To UBound(Colonne)   '<- Cosa significa Ubound?
		sColonna = ""
		For j = 1 To classe
			sColonna = sColonna & Format2(Colonne(k,j)) & " "
		Next
		Call Scrivi(sColonna)
	Next
End Sub

Ma ovviamente eseguendolo mi da solo un gelido errore :D

E sono solo alla vana interpretazione della prima parte della tua dritta pensa te... :rolleyes:

Alla prossima dritta con tutta la calma di questo mondo carissimo
GRAZIE alla miliardesima e buon lavoro! ;)


Tom segui l'esempio che trovi nei test .. ci vuole un ciclo do .. non un ciclo for !
 
ciao Tom , si chiamava Test_SviluppoCombinazioni , eccolo ... vedi se vuoi darmi una grande soddisfazione ,prova a modificarlo per i tuoi scopi .
Prima lancialo cosi come'è e vedi che fa poi adopra il ragionamento e vedi un po se riesci a sfruttarlo.
Codice:
Sub Main
	
	Dim k
	Dim Classe
	Dim aCol
	ReDim aNum(90)
	Dim i
	
	For k = 1 To 90
		aNum(k) = k
	Next
	
	Classe = 2
	If InitSviluppoIntegrale(aNum,Classe) > 0 Then
	
	
		Do While GetCombSviluppo(aCol) = True
			i = i + 1
			Call Scrivi(FormattaStringa(i,"00000") & " " & StringaNumeri(aCol))
		Loop
	End If
	
End Sub
 
ciao Tom , si chiamava Test_SviluppoCombinazioni , eccolo ... vedi se vuoi darmi una grande soddisfazione ,prova a modificarlo per i tuoi scopi .
Prima lancialo cosi come'è e vedi che fa poi adopra il ragionamento e vedi un po se riesci a sfruttarlo.
Codice:
Sub Main
    
    Dim k
    Dim Classe
    Dim aCol
    ReDim aNum(90)
    Dim i
    
    For k = 1 To 90
        aNum(k) = k
    Next
    
    Classe = 2
    If InitSviluppoIntegrale(aNum,Classe) > 0 Then
    
    
        Do While GetCombSviluppo(aCol) = True
            i = i + 1
            Call Scrivi(FormattaStringa(i,"00000") & " " & StringaNumeri(aCol))
        Loop
    End If
    
End Sub

Certo LuigiB ci proverò! :)

Grazie!

Ti faccio sapere i risultati... dopo che ho finito i miei 3 neuroni
nel tentativo...
di modificarlo per i miei scopi ;)

Buona serata mitico! :o
 
Ultima modifica:
Dunque...
Ho provato e riprovato a... mixare e comprendere... il + possibile... (con i miei 3 neuroni)
i due pezzi di codice al fine di generare e comunque poter gestire l'immane numero di cinquine, ma
nonostante tutti i miei sforzi il massimo che ho ottenuto è che lo script (una volta eseguito) non da errore...
ma il suo output nella sua vacuità sembra dirmi... "cambia hobby!" :D

Codice:
Sub Main


    Dim Colonne
    Dim numeri(90)
    Dim classe
    'Dim sColonna
    Dim i
    
    classe = 5


    'For k = 1 To 90
    '    numeri(k) = k
    'Next


    Colonne = InitSviluppoIntegrale(numeri,classe)
        
    'For k = 1 To Colonne
        
        'sColonna = ""
        
        'For j = 1 To classe
            'sColonna = sColonna & Format2(Colonne(k,j)) & " "
        'Next
        'Call Scrivi(sColonna)
    'Next
    
    
    Do While GetCombSviluppo(Colonne) = True
            
            'For i = 1 To 1000
            i = i + 1
            Call Scrivi(FormattaStringa(i,"00000") & " " & StringaNumeri(Colonne))
              'Next
        
        Loop


    
    
End Sub
 
Ultima modifica:
ciao Tom , hai mixato talemte tanto dello script che ti ho detto di usare non è rimasto nulla...
ripeto lo script da cui partire è qesto di seguito , lo hai fatto girare ? hai capito cosa fa ?
Modificarlo per quello che serve a te è una cosa banalissima ... ragionaci un po .. almeno dimmi secondo te in quale punto dello script devi inserire la funzione che fa la statistica della colonna ...

Codice:
Sub Main
    
    Dim k
    Dim Classe
    Dim aCol
    ReDim aNum(90)
    Dim i
    
    For k = 1 To 90
        aNum(k) = k
    Next
    
    Classe = 2
    If InitSviluppoIntegrale(aNum,Classe) > 0 Then
    
    
        Do While GetCombSviluppo(aCol) = True
            i = i + 1
            Call Scrivi(FormattaStringa(i,"00000") & " " & StringaNumeri(aCol))
        Loop
    End If
    
End Sub
 
ciao Tom , hai mixato talemte tanto dello script che ti ho detto di usare non è rimasto nulla...
ripeto lo script da cui partire è qesto di seguito , lo hai fatto girare ? hai capito cosa fa ?
Modificarlo per quello che serve a te è una cosa banalissima ... ragionaci un po .. almeno dimmi secondo te in quale punto dello script devi inserire la funzione che fa la statistica della colonna ...

Codice:
Sub Main
    
    Dim k
    Dim Classe
    Dim aCol
    ReDim aNum(90)
    Dim i
    
    For k = 1 To 90
        aNum(k) = k
    Next
    
    Classe = 2
    If InitSviluppoIntegrale(aNum,Classe) > 0 Then
    
    
        Do While GetCombSviluppo(aCol) = True
            i = i + 1
            Call Scrivi(FormattaStringa(i,"00000") & " " & StringaNumeri(aCol))
        Loop
    End If
    
End Sub

Io rimanendo su quest'ultimo script...
Cambierei a naso...

Codice:
Classe = 2

con

Codice:
Classe = 5

e la funzione per la statistica colonna... la metterei...

sempre a naso... (ma devo essere molto raffreddado si vede... :D)

Codice:
RetRit = RitardoCombinazioneTurbo(aRuote,aNum,nSorte,Fine)

nella parte interna a do while...

Facendolo girare... così com'è ho visto che crea quasi istantaneamente 4004 ambi indicizzandoli. Figo! :)

Di + ninsò :rolleyes: anche se piano piano spero di capire sempre + il tuo magico mondo Maestro :o
 
Ultima modifica:
ecco .. allora prima che pure i miei neuroni diventino 3 come mai non lo hai fatto subito che io lo script da usare te lo avevo dato ieri ?
E' esattamente come hai detto.Ciao
 

Ultima estrazione Lotto

  • Estrazione del lotto
    sabato 18 gennaio 2025
    Bari
    24
    76
    02
    72
    12
    Cagliari
    21
    08
    77
    04
    17
    Firenze
    74
    84
    07
    12
    72
    Genova
    13
    07
    33
    47
    18
    Milano
    01
    34
    09
    55
    48
    Napoli
    46
    23
    25
    03
    06
    Palermo
    44
    07
    01
    46
    84
    Roma
    88
    78
    64
    74
    04
    Torino
    07
    87
    67
    38
    53
    Venezia
    31
    25
    04
    18
    02
    Nazionale
    49
    82
    59
    65
    67
    Estrazione Simbolotto
    Bari
    03
    13
    31
    23
    35
Indietro
Alto