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
    venerdì 01 agosto 2025
    Bari
    38
    02
    68
    33
    79
    Cagliari
    21
    78
    83
    22
    55
    Firenze
    63
    14
    72
    28
    16
    Genova
    21
    46
    17
    40
    39
    Milano
    49
    60
    17
    77
    63
    Napoli
    90
    05
    77
    74
    53
    Palermo
    16
    61
    43
    37
    90
    Roma
    40
    45
    27
    57
    32
    Torino
    62
    57
    26
    82
    61
    Venezia
    06
    46
    68
    32
    29
    Nazionale
    71
    36
    06
    32
    15
    Estrazione Simbolotto
    Nazionale
    30
    37
    17
    41
    08
Indietro
Alto