Novità

Esiste già in spaziometria? O qualcuno lo puo' creare come script?

lotto_tom75

Advanced Premium Member
Mi servirebbe una sezione o script che faccia questo:

1) prenda in considerazione tutti i 4005 ambi generabili con i 90 numeri
2) evidenzi, anche graficamente, tutti gli ultimi ritardi voluti per E su 2n per qualsiasi ruota voluta e magari anche su piu' ruote decise...

Se esiste già qualcosa del genere in spaziometria vi pregherei di indicarmela altrimenti se è da creare mi rivolgo agli scripters abilissimi di questo forum quali disaronno, joe91 ecc... per non nominare il mitico Creatore di spaziometria. Io nonostante qualche scriptino l'ho realizzato, non sono ahime' per niente in grado di farlo :( :) ma credo che potrebbe comunque essere utilissimo oltre che al sottoscritto a molti/e degli utilizzatroi/trici del meraviglioso programma del grandissimo luigib. Grazie ancora e per sempre a Luigib e a tutti gli scripters in ascolto... :)

Ovviamente resto a disposizione 24h/24 per eventuali chiarimenti in merito :D
 
Ciao lotto_tom75,
se ti interessano solo i dati cioè senza i grafici
puoi andare in Spaziometria :

Statistiche/Su Formazioni/Statistica Formazioni Registrate

selezionare nelle combinazioni (di lato) : Ambi Integrali
scegliere la sorte : Estratto
e la ruota che preferisci
e altro ancora.
In un attimo il programma ti calcola e ti evidenzia moltissimi dati.
Buona serata.
Silop:)
 
Ciao lotto_tom75,
se ti interessano solo i dati cioè senza i grafici
puoi andare in Spaziometria :

Statistiche/Su Formazioni/Statistica Formazioni Registrate

selezionare nelle combinazioni (di lato) : Ambi Integrali
scegliere la sorte : Estratto
e la ruota che preferisci
e altro ancora.
In un attimo il programma ti calcola e ti evidenzia moltissimi dati.
Buona serata.
Silop:)

Grazie silop, buona serata anche a te :) ma non è quello che intendevo purtroppo.
Quella sezione che hai menzionato è la mia preferita e credo di conoscerla già abbastanza o almeno un pò :p.
Io intendevo la possibilità di vedere sia tramite dati che tramite grafici l'andamento di ogni ritardo per E in ambo per ogni ambo generabile con i 90 numeri per la ruota o le ruote (magari anche unite) volute... Appena ho 5 min semmai guardo di fare anche una "bozza" disegnata.. di quello che intendo. Ciao :o
 
Stupendo !!! abbiamo appena ascoltato la nuova sinfonia di LuigiB ( detto "MACROSOFT" ) in DO_WHILE minore opera (zione) enne-sima ....

Sei grande come sempre !!!!

Ciao
 
ciao , non so se ho capito bene ... ad ogni modo eventuali modifiche le faranno gli interessati

Codice:
Option Explicit
Sub Main
	Dim k,s
	Dim nClasse,nColonneTot
	Dim aNumeri
	Dim aCol
	Dim Inizio,Fine
	Dim nRuoteSel
	Dim nSorte
	Dim nCicloTeo
	Dim nEstrTot
	Dim sRuote
	Inizio = EstrazioneIni
	Fine = EstrazioneFin
	nEstrTot =(Fine + 1) - Inizio
	ReDim aRuote(0)
	nRuoteSel = ScegliRuote(aRuote)
	nClasse = Scegliclasse
	nSorte = ScegliEsito
	If nSorte > nClasse Then MsgBox "La sorte non può essere maggiore della classe"
	nCicloTeo = CicloTeorico(nClasse,nSorte,Int(nRuoteSel))
	'For k = 1 To 90
	'		aNumeri(k) = k
	'	Next
	aNumeri = GetNumPerSviluppo
	If nClasse > 0 And nRuoteSel > 0 And nSorte <= nClasse Then
		sRuote = GetRuote(aRuote)
		'inizializza lo sviluppo
		nColonneTot = InitSviluppoIntegrale(aNumeri,nClasse)
		k = 0
		' ciclo che continua fiono a quando le colonne non finiscono
		Do While GetCombSviluppo(aCol)
			k = k + 1 ' conteggio colonna corrente
			ReDim aRetRitardi(0)
			ReDim aRetIdEstr(0)
			Call ElencoRitardiTurbo(aCol,aRuote,nSorte,Inizio,Fine,aRetRitardi,aRetIdEstr)
			Call DisegnaGrafioRit(StringaNumeri(aCol),nSorte,nCicloTeo,nEstrTot,sRuote,aRetRitardi)
			Call AvanzamentoElab(1,nColonneTot,k)
			If ScriptInterrotto Then Exit Do
		Loop
	End If
End Sub
Sub DisegnaGrafioRit(sNumeri,nSorte,nCicloTeo,nEstrTot,sRuote,aRitardi)
	Dim nMin,nMax
	Dim k
	Dim nTot
	Dim nFreqT
	Const nSezioniGraf = 15
	
	nTot = UBound(aRitardi)
	ReDim aValori(nTot,2)
	For k = 0 To nTot
		aValori(k,1) = k
		If k = 0 Then
			aValori(k,2) = 0
		Else
			aValori(k,2) = aRitardi(k)
		End If
	Next
	Call GetValoriMinMax(aRitardi,nMin,nMax)
	Call PreparaGrafico("",0,nTot,nMin,nMax,GetStepX(nTot,nSezioniGraf),10)
	Call DisegnaLineaGrafico(aValori,vbBlue)
	
	
	nFreqT = Round(Dividi(nEstrTot,nCicloTeo),3)
	
	Scrivi String(120,"=")

	Scrivi "Combinazione       : " & sNumeri & " per " & NomeSorte(nSorte) & " su " & sRuote
	Scrivi "Ritardo minimo     : " & nMin
	Scrivi "Ritardo max        : " & nMax
	Scrivi "Frequenza          : " & nTot
	Scrivi "Freq. Teorica      : " & nFreqT
	Scrivi "Perc RapportoFreq  : " & Round(ProporzioneX(nTot,nFreqT,100),3) & " %"
	
	Call InserisciGrafico
	Scrivi String(120,"=")
	
End Sub
Function GetStepX(nTot,nSezioni)

	Dim t
	
	t = Round(Dividi(nTot,nSezioni),0)
	
	If t <= 10 Then t = 10
	
	GetStepX = t
End Function
Sub GetValoriMinMax(aRitardi,RetMin,RetMax)
	Dim k
	RetMin = 10000000
	RetMax = - 10000000
	For k = LBound(aRitardi) To UBound(aRitardi)
		If aRitardi(k) < RetMin Then
			RetMin = aRitardi(k)
		End If
		If aRitardi(k) > RetMax Then
			RetMax = aRitardi(k)
		End If
	Next
End Sub
Function Scegliclasse
	Dim k
	ReDim aV(5)
	For k = 1 To 5
		aV(k) = k
	Next
	Scegliclasse = ScegliOpzioneMenu(aV,2,"Scegli classe di sviluppo")
End Function
Function GetRuote(aRuote)
	Dim s 
	Dim k
	
	For k = 1 To UBound(aRuote)
		s = s & SiglaRuota( aRuote(k)) & "."
	Next
	GetRuote = Left(s , Len(s)-1)
	
End Function

Mi associo al pensiero di wambo (trattasi della tua ennesima Grandissima Opera e Sinfonia Lotto Programmatica Ludica)

Grazie 1000 Maestro.


Per quanto riguarda un piccolo problemuccio al riguardo ti allego l'img che si presenta quando si consideri un range temporale piu' ristretto es. 180 estrazioni.

prb.jpg

Inoltre se proviamo qualcosa di più impegnativo.. tipo E in cinquina il programma sembra bloccarsi. Questo almeno sul mio win 7 professional.

Ultimissima modifica che sarebbe proprio il NON PLUS ULTRA (ma va benissimo anche cosi'!!!) sarebbe il poter vedere i singoli ritardi delle formazioni volute per diciamo le ultime n volte (non solo dal punto di vista grafico ma anche dal punto di vista numerico :p ) (ma ripeto va benissimo anche cosi'!!!)

GRAZIE ANCORA GRANDISSIMO!
 
Ultima modifica:
grazie dei complimenti .. questa è lo scheletro dello script.. evolvetelo.
ciao

per l'errore sostituire la variabile nMin con il valore fisso 0

in pratica la nuova istruzione deve diventare cosi

Codice:
Call PreparaGrafico("",0,nTot,0,nMax ,GetStepX(nTot,nSezioniGraf),10)


dimenticavo .. le cinquine sono 90 milioni .. mi pare il minimo che sembra che si blocchi :-)
siamo sempre in script ,mica in codice compilato ...
 
Ultima modifica di un moderatore:
LO SCRIPT FINALE è QUESTO

CIAO

Codice:
Option Explicit
Sub Main
	Dim k,s
	Dim nClasse,nColonneTot
	Dim aNumeri
	Dim aCol
	Dim Inizio,Fine
	Dim nRuoteSel
	Dim nSorte
	Dim nCicloTeo
	Dim nEstrTot
	Dim sRuote
	Inizio = EstrazioneIni
	Fine = EstrazioneFin
	nEstrTot =(Fine + 1) - Inizio
	ReDim aRuote(0)
	nRuoteSel = ScegliRuote(aRuote)
	nClasse = Scegliclasse
	nSorte = ScegliEsito
	If nSorte > nClasse Then MsgBox "La sorte non può essere maggiore della classe"
	If nClasse > 0 And nRuoteSel > 0 And nSorte <= nClasse Then
		aNumeri = GetNumPerSviluppo
		nCicloTeo = CicloTeorico(nClasse,nSorte,Int(nRuoteSel))
		sRuote = GetRuote(aRuote)
		'inizializza lo sviluppo
		nColonneTot = InitSviluppoIntegrale(aNumeri,nClasse)
		k = 0
		' ciclo che continua fiono a quando le colonne non finiscono
		Do While GetCombSviluppo(aCol)
			k = k + 1 ' conteggio colonna corrente
			ReDim aRetRitardi(0)
			ReDim aRetIdEstr(0)
			Call ElencoRitardiTurbo(aCol,aRuote,nSorte,Inizio,Fine,aRetRitardi,aRetIdEstr)
			Call DisegnaGraficoRit(StringaNumeri(aCol),nSorte,nCicloTeo,nEstrTot,sRuote,aRetRitardi)
			If k Mod 10 = 0 Then
				Call Messaggio("Colonna n° " & k)
				Call AvanzamentoElab(1,nColonneTot,k)
				If ScriptInterrotto Then Exit Do
			End If
		Loop
	End If
End Sub
Sub DisegnaGraficoRit(sNumeri,nSorte,nCicloTeo,nEstrTot,sRuote,aRitardi)
	Dim nMin,nMax
	Dim k
	Dim nTot
	Dim nFreqT
	Const nSezioniGraf = 15
	nTot = UBound(aRitardi)
	ReDim aValori(nTot,2)
	nMin = 10000000
	nMax = - 10000000
	For k = 0 To nTot
		aValori(k,1) = k
		If k = 0 Then
			aValori(k,2) = 0
		Else
			aValori(k,2) = aRitardi(k)
			If aRitardi(k) < nMin Then
				nMin = aRitardi(k)
			End If
			If aRitardi(k) > nMax Then
				nMax = aRitardi(k)
			End If
		End If
	Next
	
	Call PreparaGrafico("",0,nTot,0,nMax,GetStepX(nTot,nSezioniGraf),10)
	Call DisegnaLineaGrafico(aValori,vbBlue)
	nFreqT = Round(Dividi(nEstrTot,nCicloTeo),3)
	Scrivi String(120,"=")
	Scrivi "Combinazione       : " & sNumeri & " per " & NomeSorte(nSorte) & " su " & sRuote
	Scrivi "Ritardo minimo     : " & nMin
	Scrivi "Ritardo max        : " & nMax
	Scrivi "Frequenza          : " & nTot
	Scrivi "Freq. Teorica      : " & nFreqT
	Scrivi "Perc RapportoFreq  : " & Round(ProporzioneX(nTot,nFreqT,100),3) & " %"
	Scrivi "Ultimi 10 ritardi  : " & GetUltimiRit(aRitardi,10)
	Call InserisciGrafico
	Scrivi String(120,"=")
End Sub
Function GetStepX(nTot,nSezioni)
	Dim t
	t = Round(Dividi(nTot,nSezioni),0)
	If t <= 10 Then t = 10
	GetStepX = t
End Function
 
Function Scegliclasse
	Dim k
	ReDim aV(5)
	For k = 1 To 5
		aV(k) = k
	Next
	Scegliclasse = ScegliOpzioneMenu(aV,2,"Scegli classe di sviluppo")
End Function
Function GetRuote(aRuote)
	Dim s
	Dim k
	For k = 1 To UBound(aRuote)
		s = s & SiglaRuota(aRuote(k)) & "."
	Next
	GetRuote = Left(s,Len(s) - 1)
End Function
Function GetUltimiRit(aRitardi,n)
	Dim i
	Dim k
	Dim s
	i =(UBound(aRitardi) + 1) - n
	If i <= 0 Then i = 1
	For k = i To UBound(aRitardi)
		s = s & aRitardi(k) & ","
	Next
	If s <> "" Then
		GetUltimiRit = Left(s,Len(s) - 1)
	Else
		GetUltimiRit = ""
	End If
End Function
 
Ultima modifica di un moderatore:
LO SCRIPT FINALE è QUESTO

CIAO

Codice:
Option Explicit
Sub Main
	Dim k,s
	Dim nClasse,nColonneTot
	Dim aNumeri
	Dim aCol
	Dim Inizio,Fine
	Dim nRuoteSel
	Dim nSorte
	Dim nCicloTeo
	Dim nEstrTot
	Dim sRuote
	Inizio = EstrazioneIni
	Fine = EstrazioneFin
	nEstrTot =(Fine + 1) - Inizio
	ReDim aRuote(0)
	nRuoteSel = ScegliRuote(aRuote)
	nClasse = Scegliclasse
	nSorte = ScegliEsito
	If nSorte > nClasse Then MsgBox "La sorte non può essere maggiore della classe"
	If nClasse > 0 And nRuoteSel > 0 And nSorte <= nClasse Then
		aNumeri = GetNumPerSviluppo
		nCicloTeo = CicloTeorico(nClasse,nSorte,Int(nRuoteSel))
		sRuote = GetRuote(aRuote)
		'inizializza lo sviluppo
		nColonneTot = InitSviluppoIntegrale(aNumeri,nClasse)
		k = 0
		' ciclo che continua fiono a quando le colonne non finiscono
		Do While GetCombSviluppo(aCol)
			k = k + 1 ' conteggio colonna corrente
			ReDim aRetRitardi(0)
			ReDim aRetIdEstr(0)
			Call ElencoRitardiTurbo(aCol,aRuote,nSorte,Inizio,Fine,aRetRitardi,aRetIdEstr)
			Call DisegnaGraficoRit(StringaNumeri(aCol),nSorte,nCicloTeo,nEstrTot,sRuote,aRetRitardi)
			If k Mod 10 = 0 Then
				Call Messaggio("Colonna n° " & k)
				Call AvanzamentoElab(1,nColonneTot,k)
				If ScriptInterrotto Then Exit Do
			End If
		Loop
	End If
End Sub
Sub DisegnaGraficoRit(sNumeri,nSorte,nCicloTeo,nEstrTot,sRuote,aRitardi)
	Dim nMin,nMax
	Dim k
	Dim nTot
	Dim nFreqT
	Const nSezioniGraf = 15
	nTot = UBound(aRitardi)
	ReDim aValori(nTot,2)
	nMin = 10000000
	nMax = - 10000000
	For k = 0 To nTot
		aValori(k,1) = k
		If k = 0 Then
			aValori(k,2) = 0
		Else
			aValori(k,2) = aRitardi(k)
			If aRitardi(k) < nMin Then
				nMin = aRitardi(k)
			End If
			If aRitardi(k) > nMax Then
				nMax = aRitardi(k)
			End If
		End If
	Next
	
	Call PreparaGrafico("",0,nTot,0,nMax,GetStepX(nTot,nSezioniGraf),10)
	Call DisegnaLineaGrafico(aValori,vbBlue)
	nFreqT = Round(Dividi(nEstrTot,nCicloTeo),3)
	Scrivi String(120,"=")
	Scrivi "Combinazione       : " & sNumeri & " per " & NomeSorte(nSorte) & " su " & sRuote
	Scrivi "Ritardo minimo     : " & nMin
	Scrivi "Ritardo max        : " & nMax
	Scrivi "Frequenza          : " & nTot
	Scrivi "Freq. Teorica      : " & nFreqT
	Scrivi "Perc RapportoFreq  : " & Round(ProporzioneX(nTot,nFreqT,100),3) & " %"
	Scrivi "Ultimi 10 ritardi  : " & GetUltimiRit(aRitardi,10)
	Call InserisciGrafico
	Scrivi String(120,"=")
End Sub
Function GetStepX(nTot,nSezioni)
	Dim t
	t = Round(Dividi(nTot,nSezioni),0)
	If t <= 10 Then t = 10
	GetStepX = t
End Function
 
Function Scegliclasse
	Dim k
	ReDim aV(5)
	For k = 1 To 5
		aV(k) = k
	Next
	Scegliclasse = ScegliOpzioneMenu(aV,2,"Scegli classe di sviluppo")
End Function
Function GetRuote(aRuote)
	Dim s
	Dim k
	For k = 1 To UBound(aRuote)
		s = s & SiglaRuota(aRuote(k)) & "."
	Next
	GetRuote = Left(s,Len(s) - 1)
End Function
Function GetUltimiRit(aRitardi,n)
	Dim i
	Dim k
	Dim s
	i =(UBound(aRitardi) + 1) - n
	If i <= 0 Then i = 1
	For k = i To UBound(aRitardi)
		s = s & aRitardi(k) & ","
	Next
	If s <> "" Then
		GetUltimiRit = Left(s,Len(s) - 1)
	Else
		GetUltimiRit = ""
	End If
End Function

GRAZIE 1000 MAGO! :)
 

Ultima estrazione Lotto

  • Estrazione del lotto
    sabato 23 agosto 2025
    Bari
    67
    05
    41
    45
    12
    Cagliari
    29
    78
    54
    88
    28
    Firenze
    57
    58
    15
    45
    44
    Genova
    53
    33
    89
    34
    77
    Milano
    09
    31
    36
    03
    21
    Napoli
    82
    35
    45
    06
    65
    Palermo
    25
    40
    82
    48
    62
    Roma
    21
    24
    74
    52
    09
    Torino
    28
    78
    50
    90
    84
    Venezia
    38
    87
    03
    25
    41
    Nazionale
    56
    09
    42
    57
    33
    Estrazione Simbolotto
    Nazionale
    41
    44
    04
    07
    21

Ultimi Messaggi

Indietro
Alto