Novità

script 10elotto estrapolare terni .

  • Creatore Discussione Creatore Discussione Roby
  • Data di inizio Data di inizio
Stato
Chiusa ad ulteriori risposte.
R

Roby

Guest
Un saluto a tutti del forum.
Mi servirebbe se fattibile estrapolare dall'archivio 10elotto,i terni, più frequenti.
Sempre se fattibile inserire vicino il ritado e ritardomax.
Un saluto
edesimone
ps.
l'archivio deve partire dalla data 11/06/2009.
altra cosa estrapolare al massimo i primi 10 terni.
 
Grazie LuigiB.
Lanciando il listato mi da errore:
---------------------------
Tipo non corrispondente: '[string: "02.04.10"]'

Errore script !

13 - Tipo non corrispondente: '[string: "02.04.10"]'

Linea : 66

Colonna : 2

Source : Errore di run-time di Microsoft VBScript

un saluto
edesimone
 
Ciao Luigi, ottimo questo script rispecchia una mia precedente richiesta.
Se magari potessi aggiungerci il ritardo della combinazione per sorte
cioè ritardo x sorte1, sorte2, e sorte3 sarebbe molto utile al fine delle giocate stesse.

Purtroppo questo livello mi risulta difficile da comprendere, ho bisogno di studiarci un pò.

ciao Mike58
 
LuigiB
Credo di aver risolto,errore If aV(1) > 0 Then, quì si blocca,
la mia modifica If aV(2) > 0 Then, così sviluppa.
Credo di aver fatto bene, fai un controllo.
Grazie
edesimone
 
LuigiB
Mi sono accorto adesso, lo sviluppo va bene con quella piccola modifica fatta da me,è possibile oltre la frequenza aggiungere rit e ritmax.
Un saluto
edesimone
 
LuigiB.
Non va bene altro errore:
---------------------------
Tipo non corrispondente: '[string: "02.04.10"]'

Errore script !

13 - Tipo non corrispondente: '[string: "02.04.10"]'

Linea : 71

Colonna : 2

Source : Errore di run-time di Microsoft VBScript

un saluto
edesimone
 
LuigiB
Adesso va bene,aspetto senza mettere fretta,per i ritardi.
Altra cosa mettendo nClasse = 4 mi sviluppa le quartine tutto ok,
se metto nClasse = 5 fino a 10 si blocca dicendomi:
7 - out of memory, non mi interessa più di tanto,se è fattibile e può servire per qualcuno,vedi Tu.
Oggi dedica a Te questa giornata di festa, noi possiamo aspettare e come
dice Renato Zero Questi sono i migliori anni della nostra vita.
Auguri
edesimone
 
Ciao Ede , si purtroppo le cinquine potrebebro essere ben 90 milioni ...
per non parlare delle combinazioni superiori .. purtroppo per le combinazioni superiori alla quartina non si puo fare nulla...
Ecco lo script che calcola anche ritardo e ritardo massimo
ciao

Codice:
Class clsPresenze
	Dim Presenze
	Dim sNumeri
	Dim Rit
	Dim RitMax
	
End Class

Sub Main
	Dim sFile
	Dim idEstr
	Dim sRecord
	Dim nClasse
	Dim k
	Dim sKey
	Dim clsPres
	Dim collPres
	Dim nTrovati
	Dim aColonne
	Dim aNumeri
	
	
	
	nClasse = ScegliClasse
	If nClasse <= 0 Then Exit Sub
	
	sFile = GetDirectoryAppData & "Estrazioni10ELotto.txt"
	Call EliminaFile(sFile)
	
	
	Call Messaggio("Calcolo frequenza")
	Set collPres = GetNewCollection
	For idEstr = EstrazioneIni To EstrazioneFin
		
		ReDim aColonna(0)
		If GetColonna(idEstr,aColonna) Then
		
			sRecord = FormatSpace(IndiceAnnuale(idEstr),5,True) & "|" & DataEstrazione(idEstr) & "|" & StringaNumeri(aColonna,"|")
			Call ScriviFile(sFile,sRecord)
	
		
			aColonne = SviluppoIntegrale(aColonna,nClasse)
			
			For k = 1 To UBound(aColonne)
				sKey = "k"
				For j = 1 To nClasse
					sKey = sKey & Format2(aColonne(k,j)) & "."
				Next
				If sKey <> "" Then
					sKey = Left(sKey,Len(sKey) - 1)
					Set clsPres = GetClsPres(sKey,collPres)
					clsPres.Presenze = clsPres.Presenze + 1
	
	
				End If 		
			Next
		End If
		
		
		
		Call AvanzamentoElab(EstrazioneIni,EstrazioneFin,idEstr)
		If ScriptInterrotto Then Exit For
	Next
	
	ReDim aComb(100,2)
	Call IsolaPiuFrequenti(collPres,aComb)
	
	
	If ApriBaseDatiFT(sFile,20,"|") Then
			Call Messaggio("Creo lista")
			
			Call Scrivi("Elenco delle 100 combinazioni da " & nClasse & " numeri piu frequenti al 10 e lotto")
			Call Scrivi
			
			ReDim aTitoli(4)
			aTitoli(1) = "Combinazione"
			aTitoli(2) = "Frequenza"
			aTitoli(3) = "Ritardo"
			aTitoli(4) = "RitardoMax"
			
			Call InitTabella(aTitoli)
			k = 0
			For k = 1 To UBound(aComb)
				
					
				aNumeri = Split(aComb(k,2),".")
				
				 	
					
		
				ReDim aV(4)
				aV(1) = aComb(k,2)
				aV(2) = aComb(k,1)
				aV(3) = RitardoCombinazioneFT(aNumeri,nClasse)
				aV(4) = SerieStoricoFT(1,EstrazioniArchivioFT,aNumeri,nClasse)
				
				
				
				If aComb(k,1) > 0 Then
		
				
					Call AddRigaTabella(aV)
				End If
				Call AvanzamentoElab(1,UBound(aComb),k)
				If ScriptInterrotto Then Exit For
		
			Next
			
		
			Call CreaTabella(2,0,0,100)
	Else
		MsgBox "File estrazioni 10 e lotto non prodotto"
	End If
	
	

	
End Sub
Function GetClsPres(sKey,collPres)
	On Error Resume Next
	Dim clsP
	
	Set clsP = collPres(sKey)
	If clsP Is Nothing Then
		Set clsP = New clsPresenze
		clsP.sNumeri = Mid(sKey,2)
		clsP.Presenze = 0
		
		collPres.Add clsP,sKey
	End If
	
	Set GetClsPres = clsP
	
	
End Function
Function GetColonna(idEstrazione,colonna)

	
	Dim nInseriti
	Dim Ruota,pos,n
	Dim k,i
	ReDim aCol(90)
	
	ReDim colonna(20)
	Do While nInseriti < 20 And pos <= 5
		For pos = 1 To 5
			For Ruota = 1 To 10
				n = Estratto(idEstrazione,Ruota,pos)
				If n > 0 Then
					If aCol(n) = False Then
						aCol(n) = True
						nInseriti = nInseriti + 1
						
						If nInseriti = 20 Then Exit For
					End If
				End If 			
			Next
			If nInseriti = 20 Then Exit For

		Next
	Loop
	
	For k = 1 To 90
		If aCol(k) Then
			i = i + 1
			colonna(i) = k
		End If
	Next
	
	ReDim Preserve colonna(i)
	
	
	If i = 20 Then
		GetColonna = True
	Else
		GetColonna = False
	End If
End Function
Function ScegliClasse()
	ReDim aVoci(3)
	
	aVoci(0) = "Estratto"
	aVoci(1) = "Ambo"
	aVoci(2) = "Terno"
	aVoci(3) = "Quaterna"
	
	
	ScegliClasse = ScegliOpzioneMenu(aVoci,2,"Secegli tipo combinazione") + 1
End Function

Sub IsolaPiuFrequenti(collPres,aComb)
	Dim k,j,i
	Dim clsPres
	
	
	Call Messaggio("Selezione combinazioni piu frequenti")
	ReDim aComb(100,2)
	For k = 1 To UBound(aComb)
		aComb(k,1) = 0
		aComb(k,2) = ""
	Next
	
	i = 0
 
ciao LuigiB
Il listato va bene,vorrei delle modifiche se possibili,tutte le funzioni sono a garanzia estratto, ambo,terni e quaterne.
Quello che chiedo è,di scegliere io la garanzia dei numeri.
Esempio:

Combinazione Frequenza Ritardo RitardoMax
76.79 24 20 30
Questa è garanzia dell'ambo, mi serve sapere gli ambi + frequenti per estratto.
Per i terni,devo sapere sia per estratto che per ambo e terno, cosi per la quaterna.
Ti ricordo che devono estrapolare sempre la frequenza maggiore, rit. e ritmax.
Credo che si possa fare(naturalmente io no).
Un saluto
edesimone
 
lo script l'ho dovuto cmbiare radicalmente perche per la tua nuova richiesta quello precedente non andava bene.
Mi auguro che tu abbia un pc veloce ...
Ciao

N.B. Funziona solo con la versione 1.1.93 (l'ultima disponibile)


Codice:
Sub Main

	Dim aComb 
	Dim nClasse
	Dim nGaranzia 
	Dim k , j 
	Dim sNumeri 
	Dim idComb
	Dim nInizio , nFine
	Dim idValoreDaAna 
	Dim sValoreUsato
	
		
	ReDim aCombMigliori (100 ,4)
	
	nClasse = ScegliClasse 
	nGaranzia = ScegliGaranzia 
	idValoreDaAna = ScegliValoreDaAnalizzare (sValoreUsato)
		
	
	
	nInizio = EstrazioneIni
	nFine = EstrazioneFin
	
	
	If nClasse >0 And nGaranzia  >0 And nGaranzia  <= nClasse And idValoreDaAna  >0   Then 
		Call Messaggio ("Sviluppo combinazioni di classe " & nClasse )
		Call SviluppaComb  (aComb , nClasse)
		Call Messaggio ("Statistica combinazioni in corso " )

		For k = 1 To UBound (aComb)
			Call AnalisiComb (aComb , k ,nClasse,nGaranzia, aCombMigliori ,nInizio , nFine  ,idValoreDaAna )
			If k Mod 20 =0 Then 
				Call Messaggio ("Statistica combinazioni in corso " & k )
		
				Call AvanzamentoElab(1 ,UBound(aComb), k)
				If ScriptInterrotto Then Exit For 
			End If
		Next	
		Call Messaggio ("" )

		ReDim aTitoli(4)
		aTitoli(1) = "Combinazione"
		aTitoli(2) = "Frequenza"
		aTitoli(3) = "Ritardo"
		aTitoli(4) = "RitardoMax"
		
		
		Call Scrivi ("Combinazioni di classe " & nClasse & " analizzate per punti " & nGaranzia  )
		Call Scrivi ("La seguente lista mostra le prime 100 combinazioni in base al valore di " & sValoreUsato )
		Call Scrivi ("Range analizzato " & GetInfoEstrazioneDL (nInizio) & " fino a " & GetInfoEstrazioneDL (nFine))
		Call Scrivi ("Estrazioni analizzate totali : " & (nFine+1) - nInizio )
		Call Scrivi
		
		

		Call InitTabella(aTitoli)

		For k = 1 To UBound(aCombMigliori)
			sNumeri = ""
			idComb = aCombMigliori(k ,4)
			For j = 1 To nClasse
				sNumeri = sNumeri & Format2(aComb(idComb ,j )) & "." 
			Next
			
			ReDim ADati(4)
			ADati(1) = Left(sNumeri , Len(sNumeri)-1)
			ADati(2) =aCombMigliori(k ,1)
			ADati(3) = aCombMigliori(k ,2)
			ADati(4) = aCombMigliori(k ,3)

			Call AddRigaTabella (ADati) 			

		Next

		Call CreaTabella
	
	Else
		MsgBox "Selezionare la classe di sviluppo e la garanzia , " & _
		"si ricorda che la garanzia non puo essere maggiore della classe di sviluppo " & _ 
		"e che bisogna scegliere quale valore statistico considerare per " & _ 
		"alimentare la lista delle prime 100 Combinazioni " 
		
		
				
	End If 
	
End Sub
Sub AnalisiComb( aComb , idComb , nClasse  , Garanzia , aCombMig , nInizio , nFine ,idValoreDaAna  )
	
	Dim k , j 
	ReDim aNum( nClasse )
	Dim Rit
	Dim RitMax 
	Dim Freq
	Dim Valore
	
	
	For k = 1 To nClasse
		aNum(k) = aComb(idComb , k)
	Next
	
	Call StatisticaFormazioneDL (aNum, Garanzia ,Rit ,RitMax ,0,Freq,nInizio , nFine  )
	Select Case idValoreDaAna 
	Case 1
		Valore = Freq
	Case 2
		Valore = Rit
	Case 3 
		Valore = RitMax
	End Select
	For k = 1 To UBound(aCombMig)
		
		If Valore >= aCombMig(k,0 ) Then
			
			For j = UBound(aCombMig) To (k+1) Step -1
				aCombMig( j,0) =aCombMig( j-1,0)
				aCombMig( j,1) =aCombMig( j-1,1)
				aCombMig( j,2) =aCombMig( j-1,2)
				aCombMig( j,3) =aCombMig( j-1,3)
				aCombMig( j,4) =aCombMig( j-1,4)
				 
			Next
			aCombMig( k,0) =Valore
			aCombMig( k,1) =Freq
			aCombMig( k,2) =Rit
			aCombMig( k,3) =RitMax
			aCombMig( k,4) =idComb
			
			Exit For
				
		End If 
	Next
End Sub 
Sub SviluppaComb ( aComb , Classe)
	
	Dim k 
	ReDim aNum(90)

	For k = 1 To 90
		aNum(k) =k
	Next
	
	aComb = SviluppoIntegrale(  aNum ,Classe)
	
End Sub 

Function ScegliClasse()
	ReDim aVoci(3)
	
	aVoci(0) = "Estratto"
	aVoci(1) = "Ambo"
	aVoci(2) = "Terno"
	aVoci(3) = "Quaterna"
	
	
	ScegliClasse = ScegliOpzioneMenu(aVoci,2,"Secegli tipo combinazione") + 1
End Function

Function ScegliGaranzia( )

	ReDim aVoci(3)
	
	aVoci(0) = "Estratto"
	aVoci(1) = "Ambo"
	aVoci(2) = "Terno"
	aVoci(3) = "
 
Un saluto LuigiB
Il listato va bene,quando mi da le combinazioni però unisce tutti i numeri,bisogna distanziarli,usando le quartine per estratto,ambo e terno,mi da il solito errore:
7-Out of memory.
Credo che non si possa fare niente(peccato perchè la ricerca in quartina mi seviva.)
Lavoro con la versione 1.1.93
Grazie
edesimone
 
ricopia lo script opra , mi ero accorto che non distanziavo i numeri e l'ho corretto.
Per le quartine dipende dalla memoria diponibile sul pc comunque sto facendo una modifica al programma che consentira di svilupparle lo stesso.
Ciao
 
scarica l'ultima versione del programma e poi usa questo nuovo script.
Comunque le quartine son sempre piu di 2000000 e quindi anche se non da errore ci vuole sempre tempo ...

Codice:
Option Explicit
Sub Main

	
	Dim nClasse
	Dim nGaranzia
	Dim k,j
	Dim sNumeri
	Dim idComb
	Dim nInizio,nFine
	Dim idValoreDaAna
	Dim sValoreUsato
	Dim CombTot
		
	ReDim aCombMigliori(100,4)
	
	nClasse = ScegliClasse
	nGaranzia = ScegliGaranzia
	idValoreDaAna = ScegliValoreDaAnalizzare(sValoreUsato)
		
	
	
	nInizio = EstrazioneIni
	nFine = EstrazioneFin
	
	
	If nClasse > 0 And nGaranzia > 0 And nGaranzia <= nClasse And idValoreDaAna > 0 Then
		Call Messaggio("Sviluppo combinazioni di classe " & nClasse)
		CombTot = InitSviluppaComb(nClasse)
		
		Call Messaggio("Statistica combinazioni in corso ")
		ReDim aCol(nClasse)
		Do While GetCombSviluppo(aCol) = True
			Call AnalisiComb(aCol,nGaranzia,aCombMigliori,nInizio,nFine,idValoreDaAna)
			k = k + 1
			If k Mod 20 = 0 Then
				Call Messaggio("Statistica combinazioni in corso " & k & " di " & CombTot)
		
				Call AvanzamentoElab(1,CombTot,k)
				
				If ScriptInterrotto Then Exit Do
			End If
		Loop
		Call Messaggio("")

		ReDim aTitoli(4)
		aTitoli(1) = "Combinazione"
		aTitoli(2) = "Frequenza"
		aTitoli(3) = "Ritardo"
		aTitoli(4) = "RitardoMax"
		
		
		Call Scrivi("Combinazioni di classe " & nClasse & " analizzate per punti " & nGaranzia)
		Call Scrivi("La seguente lista mostra le prime 100 combinazioni in base al valore di " & sValoreUsato)
		Call Scrivi("Range analizzato " & GetInfoEstrazioneDL(nInizio) & " fino a " & GetInfoEstrazioneDL(nFine))
		Call Scrivi("Estrazioni analizzate totali : " &(nFine + 1) - nInizio)
		Call Scrivi
		
		

		Call InitTabella(aTitoli)

		For k = 1 To UBound(aCombMigliori)
			
			
			ReDim ADati(4)
			ADati(1) = aCombMigliori(k,4)
			ADati(2) = aCombMigliori(k,1)
			ADati(3) = aCombMigliori(k,2)
			ADati(4) = aCombMigliori(k,3)

			Call AddRigaTabella(ADati) 			

		Next

		Call CreaTabella
	
	Else
		MsgBox "Selezionare la classe di sviluppo e la garanzia , " & _
		"si ricorda che la garanzia non puo essere maggiore della classe di sviluppo " & _
		"e che bisogna scegliere quale valore statistico considerare per " & _
		"alimentare la lista delle prime 100 Combinazioni "
		
		
				
	End If
	
End Sub
Sub AnalisiComb(aNum,Garanzia,aCombMig,nInizio,nFine,idValoreDaAna)
	
	Dim k,j
	
	Dim Rit
	Dim RitMax
	Dim Freq
	Dim Valore
	
	
	
	
	Call StatisticaFormazioneDL(aNum,Garanzia,Rit,RitMax,0,Freq,nInizio,nFine)
	Select Case idValoreDaAna
	Case 1
		Valore = Freq
	Case 2
		Valore = Rit
	Case 3
		Valore = RitMax
	End Select
	For k = 1 To UBound(aCombMig)
		
		If Valore >= aCombMig(k,0) Then
			
			For j = UBound(aCombMig) To(k + 1) Step - 1
				aCombMig(j,0) = aCombMig(j - 1,0)
				aCombMig(j,1) = aCombMig(j - 1,1)
				aCombMig(j,2) = aCombMig(j - 1,2)
				aCombMig(j,3) = aCombMig(j - 1,3)
				aCombMig(j,4) = aCombMig(j - 1,4)
				

			Next
			aCombMig(k,0) = Valore
			aCombMig(k,1) = Freq
			aCombMig(k,2) = Rit
			aCombMig(k,3) = RitMax
			aCombMig(k,4) = StringaNumeri(aNum)
			
			
			Exit For
				
		End If
	Next
End Sub
Function InitSviluppaComb(Classe)
	
	Dim k
	ReDim aNum(90)

	For k = 1 To 90
		aNum(k) = k
	Next
	
	InitSviluppaComb = InitSviluppoIntegrale(aNum,Classe)
	
End Function

Function ScegliClasse()
	ReDim aVoci(3)
	
	aVoci(0) = "Estratto"
	aVoci(1) = "Ambo"
	aVoci(2) = "Terno"
	aVoci(3) = "Quaterna"
	
	
	ScegliClasse = ScegliOpzioneMenu(aVoci,2,"Secegli tipo combinazione") + 1
End Function

Function ScegliGaranzia()

	ReDim aVoci(3)
	
	aVoci(0) = "Estratto"
	aVoci(1) = "Ambo"
	aVoci(2) = "Terno"
	aVoci(3) = "Quaterna"
	
	
	ScegliGaranzia = ScegliOpzioneMenu(aVoci,2,"Secegli garanzia") + 1
End Function

Function ScegliValoreDaAnalizzare(sValore)

	ReDim aVoci(2)
	Dim i
	
	aVoci(0) = "Frequenza"
	aVoci(1) = "Ritardo"
	aVoci(2) = "Ritardo massimo"
	
	
	
	i = Scegl
 
Luigi ho appena installato le versione 1.1.94
quando lancio il suddetto script mi compare il seguente errore:

9 - indice non compreso nell'intervallo

Dopo aver scelto esame Ambo per garanzia estratto, anche con altre opzioni


La mia e una puntializzazione non so bene cosa faccio tale script ma noto questo errore

Bye Bye
 
Un saluto cebino
ho installato la versione 1.1.94, a me non da nessun errore.
Mio consiglio prova mettendo inizio range dalla data 11/06/2009.
un saluto
edesimone
 
Luigi ho appena installato le versione 1.1.94 l'ultima versione del programma e' vorrei ringraziarla di quanto a messo a disposizione di tutti.E' un bellissimo programma con una bella grafica .Grazie di vero cuore.
Saluti Cuci
 
Grazie Luigi
Il listato funziona benissimo con 1.1.94,
giustamente come dicevi per le quartine a garanzia del tre, ci sono voluti ben 30 minuti,niente male,vorrei sapere una volta elaborato diciamo le quartine, si possono memorizzare sul programma spaziometria? Si può aggiornare automaticamente ogni volta che viene inserita una nuova estrazione?
Esempio:

Combinazione Frequenza Ritardo RitardoMax
39.62.76.79 35 8 38
Mettiamo che esce 39.62.76 la frequenza diventa 36 il ritardo 0 e se supera il ritardomax 39.
Faccio delle richieste che non so se sono fattibili.
Ancora un grazie
edesimone
 
Ovviamente è l'unico modo per fare andare piu veloce la ricerca ..si tengono memorizzati i dati e si aggiornano ad ogni nuova estrazione ,
a fare si puo fare pero in tutta sincerita non ne ho voglia ...dovete sapere che io non gioco quindi le rare volte che aggiungo uno script è per darvi quell'input per spingervi ad imparare e a fare da soli !
Ciao
 
Stato
Chiusa ad ulteriori risposte.

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 21 gennaio 2025
    Bari
    78
    09
    70
    03
    23
    Cagliari
    32
    88
    30
    13
    45
    Firenze
    87
    23
    15
    39
    86
    Genova
    71
    48
    67
    59
    23
    Milano
    58
    50
    80
    85
    29
    Napoli
    90
    81
    79
    82
    62
    Palermo
    70
    33
    90
    05
    10
    Roma
    15
    71
    55
    85
    76
    Torino
    89
    09
    18
    33
    69
    Venezia
    44
    80
    82
    73
    58
    Nazionale
    80
    25
    13
    63
    17
    Estrazione Simbolotto
    Bari
    39
    36
    34
    14
    31
Indietro
Alto