Novità

Domanda per sistemisti e scripters con la S maiuscola

lotto_tom75

Advanced Premium Member
In spaziometria già c'è la possibilità grazie alla fantastica sezione "sitemi ridotti" di costruirsi per gruppi numerici voluti sistemi a Garanzia voluta (es. xA,T ecc..) fino ad un massimo di 10 elementi per colonna... se non erro...

Ma se volessi... costruirmi un sistema di 30 elementi con G4 partendo da un gruppo di sole 60 unità?

Domanda per sistemisti e matematici esperti: Quante colonne si dovrebbero generare?

Domanda per scripters esperti: E' possibile ampliare quanto già presente nella sezione "sistemi ridotti" di spaziometria fino a prevedere la possibilità di espandere la creazione di sistemi ridotti a G voluta a quantita' di elementi per colonna voluta anzichè fermarsi come adesso a 10?

THANKS VERY MUCH AND GOOD SUNDAY EVERYBODY :)
 
ciao , il fatto che siano a sviluppo classe 10 max dipende dal fatto che sono sistemi previsti per essere giocati , pertanto
non e possibile usare una classe di sviluppo piu alta.
Ad ogni modo le matrici le ho prese da questo sito , forse ci sono anche gli sviluppi che interessano te

La Jolla Covering Repository Tables
 
ciao , il fatto che siano a sviluppo classe 10 max dipende dal fatto che sono sistemi previsti per essere giocati , pertanto
non e possibile usare una classe di sviluppo piu alta.
Ad ogni modo le matrici le ho prese da questo sito , forse ci sono anche gli sviluppi che interessano te

La Jolla Covering Repository Tables

Ok, speriamo che sia realizzabile uno script per sopperire a tale limite... :p Nel frattempo... ho visto il sito che mi hai suggerito! Molto interessante non lo conoscevo. Ho provato ad intuire... la tabella che mi necessitava e ho trovato questa pagina... Covering design with v=60, k=25, t=4 Mi daresti conferma che si tratta appunto di un sistema di 25ine (85 colonne) a garanzia 4 generato da 60 elementi? Purtroppo non mi sembra ci siano sistemi sviluppabili in 30ine da un un gruppo di 60 elementi ma potrebbe andare bene anche questo con le 25ine per queste ultime mie ricercuzze... :) GRAZIE LUIGI! ;)
 
Ultima modifica:
si esatto , fondamentalmente lo script che serve a te prendendo in input le colonne della matrice dovrebbe sostituire
i numeri con quelli da te scelti , questo è cio che fa gia il programma con i sistemi ridotti.
Avrai notato che le matrici per convenzione usano i primi numeri consecutivi fino al numero di numeri in gioco.
Quindi serve una tabella di conversione che a tale numero della colonna matrice colleghi sempre tale altro (cioe quello scelto da te)
successuvamente grazie a questa tabella di conversione lo script leggendo le colonne della matrice fornira in output le colonne
con i numeri personalizzati.
Ovviamente lo script è possibile , basta applicarsi. Ciao.
 
lo script l'ho fatto io . tutto sommato è banale.
Lo script prrevede una direcrory dove siano salvate le matrici
per salvarle si va sul sito e si fa cosi , ricordati la directory dove le salvi nello script ho usato "c:\temp\"

salvasis.jpg



poi usa questo script

Codice:
Option Explicit
Sub Main
	Dim sFileMatrice,sDirMatrici,k,nScelti
	Dim nNumInGioco , nClasse , nGaranzia 
	sDirMatrici = "c:\temp\"
	sFileMatrice = ScegliMatrice(sDirMatrici)
	nNumInGioco = 0
	If FileEsistente(sFileMatrice) Then
		ReDim aRighe(0)
		Call LeggiRigheFileDiTesto(sFileMatrice,aRighe)
		 
		If GetQNumClasseGar (aRighe ,  nNumInGioco  , nClasse , nGaranzia ) Then
		 
			ReDim aNum(0)
			MsgBox "Selezionare nella finestra seguente precisamente " & nNumInGioco & " numeri",vbInformation
			nScelti = ScegliNumeri(aNum)
			Do While nScelti <> nNumInGioco
				If MsgBox("Il sistema prevede " & nNumInGioco & " numeri  sono stati scelti " & nScelti & " numeri , riproporre la selezione dei numeri ?",vbQuestion + vbYesNo) = vbNo Then
					Exit Do
				End If
				nScelti = ScegliNumeri(aNum)
			Loop
			If nScelti = nNumInGioco Then
				Call Scrivi("Numeri in gioco " & nNumInGioco)
				Call Scrivi("Classe          " & nClasse)
				Call Scrivi("Garanzia        " & nGaranzia )
				Call Scrivi 
				
				For k = 0 To UBound(aRighe)
					'Call Scrivi(aRighe(k))
					If IsRigaSoloNumeri(aRighe(k)) Then
						ReDim aNumColonna(0)
						Call ConvertiColonna(aNum,aRighe(k),aNumColonna)
						'Call Scrivi(aRighe(k) ,True)
						Call Scrivi(StringaNumeri(aNumColonna,,True))
					End If
				Next
				Scrivi sFileMatrice
			End If
		End If
	End If
End Sub
Function ScegliMatrice(sDir)
	Dim i
	ReDim aV(0)
	Call ElencoFileInDirectory(sDir,aV,".html")
	i = ScegliOpzioneMenu(aV,,"Scegli matrice")
	ScegliMatrice = sDir & aV(i) & ".html"
End Function
Function GetQNumClasseGar(aRighe , nQ , nC , nG)
	        Dim k, i, ii, sTmp
         
        nQ = 0
        nC = 0
        nG = 0
        
        For k = 0 To UBound(aRighe)
                i = InStr(1, aRighe(k), "v=", vbTextCompare)
                If i > 0 Then
                        ii = InStr(i, aRighe(k), ",", vbTextCompare)
                        If ii > 0 Then
                                sTmp = Mid(aRighe(k), i + 2, ii - (i + 2))
                                nQ = Int(sTmp)
                        End If
                End If
                i = InStr(1, aRighe(k), "k=", vbTextCompare)
                If i > 0 Then
                        ii = InStr(i, aRighe(k), ",", vbTextCompare)
                        If ii > 0 Then
                                sTmp = Mid(aRighe(k), i + 2, ii - (i + 2))
                                nC = Int(sTmp)
                        End If
                End If
                i = InStr(1, aRighe(k), "t=", vbTextCompare)
                If i > 0 Then
                        ii = InStr(i, aRighe(k), "<", vbTextCompare)
                        If ii > 0 Then
                                sTmp = Mid(aRighe(k), i + 2, ii - (i + 2))
                                nG = Int(sTmp)
                        End If
                End If


        Next
        If nQ > 0 And nC > 0 And nG > 0 Then
                GetQNumClasseGar = True
        Else
                GetQNumClasseGar = False

        End If
End Function

Function IsRigaSoloNumeri(sRiga)
	Dim k
	Dim bRet
	bRet = True
	If sRiga <> "" Then
		For k = 1 To Len(sRiga)
			If Mid(sRiga,k,1) <> " " Then
				If IsNumeric(Mid(sRiga,k,1)) = False Then
					bRet = False
					Exit For
				End If
			End If
		Next
		IsRigaSoloNumeri = bRet
	End If
End Function
Sub ConvertiColonna(aNum,sRiga,aNumColonna)
	Dim i,k,nClasse
	ReDim aV(0)
	sRiga = Trim(sRiga)
	i = InStr(sRiga,"  ")
	Do While i > 0
		sRiga = Replace(sRiga,"  "," ")
		i = InStr(sRiga,"  ")
	Loop
	Call SplitByChar("0 " & sRiga," ",aV)
	nClasse = UBound(aV)
	ReDim aNumColonna(nClasse)
	For k = 1 To nClasse
		aNumColonna(k) = aNum(Int(aV(k)))
	Next
End Sub
 
Ultima modifica di un moderatore:
lo script l'ho fatto io . tutto sommato è banale.
Lo script prrevede una direcrory dove siano salvate le matrici
per salvarle si va sul sito e si fa cosi , ricordati la directory dove le salvi nello script ho usato "c:\temp\"

salvasis.jpg



poi usa questo script

Codice:
Option Explicit
Sub Main
	Dim sFileMatrice,sDirMatrici,k,nScelti
	Dim nNumInGioco , nClasse , nGaranzia 
	sDirMatrici = "c:\temp\"
	sFileMatrice = ScegliMatrice(sDirMatrici)
	nNumInGioco = 0
	If FileEsistente(sFileMatrice) Then
		ReDim aRighe(0)
		Call LeggiRigheFileDiTesto(sFileMatrice,aRighe)
		 
		If GetQNumClasseGar (aRighe ,  nNumInGioco  , nClasse , nGaranzia ) Then
		 
			ReDim aNum(0)
			MsgBox "Selezionare nella finestra seguente precisamente " & nNumInGioco & " numeri",vbInformation
			nScelti = ScegliNumeri(aNum)
			Do While nScelti <> nNumInGioco
				If MsgBox("Il sistema prevede " & nNumInGioco & " numeri  sono stati scelti " & nScelti & " numeri , riproporre la selezione dei numeri ?",vbQuestion + vbYesNo) = vbNo Then
					Exit Do
				End If
				nScelti = ScegliNumeri(aNum)
			Loop
			If nScelti = nNumInGioco Then
				Call Scrivi("Numeri in gioco " & nNumInGioco)
				Call Scrivi("Classe          " & nClasse)
				Call Scrivi("Garanzia        " & nGaranzia )
				Call Scrivi 
				
				For k = 0 To UBound(aRighe)
					'Call Scrivi(aRighe(k))
					If IsRigaSoloNumeri(aRighe(k)) Then
						ReDim aNumColonna(0)
						Call ConvertiColonna(aNum,aRighe(k),aNumColonna)
						'Call Scrivi(aRighe(k) ,True)
						Call Scrivi(StringaNumeri(aNumColonna,,True))
					End If
				Next
				Scrivi sFileMatrice
			End If
		End If
	End If
End Sub
Function ScegliMatrice(sDir)
	Dim i
	ReDim aV(0)
	Call ElencoFileInDirectory(sDir,aV,".html")
	i = ScegliOpzioneMenu(aV,,"Scegli matrice")
	ScegliMatrice = sDir & aV(i) & ".html"
End Function
Function GetQNumClasseGar(aRighe , nQ , nC , nG)
	        Dim k, i, ii, sTmp
         
        nQ = 0
        nC = 0
        nG = 0
        
        For k = 0 To UBound(aRighe)
                i = InStr(1, aRighe(k), "v=", vbTextCompare)
                If i > 0 Then
                        ii = InStr(i, aRighe(k), ",", vbTextCompare)
                        If ii > 0 Then
                                sTmp = Mid(aRighe(k), i + 2, ii - (i + 2))
                                nQ = Int(sTmp)
                        End If
                End If
                i = InStr(1, aRighe(k), "k=", vbTextCompare)
                If i > 0 Then
                        ii = InStr(i, aRighe(k), ",", vbTextCompare)
                        If ii > 0 Then
                                sTmp = Mid(aRighe(k), i + 2, ii - (i + 2))
                                nC = Int(sTmp)
                        End If
                End If
                i = InStr(1, aRighe(k), "t=", vbTextCompare)
                If i > 0 Then
                        ii = InStr(i, aRighe(k), "<", vbTextCompare)
                        If ii > 0 Then
                                sTmp = Mid(aRighe(k), i + 2, ii - (i + 2))
                                nG = Int(sTmp)
                        End If
                End If


        Next
        If nQ > 0 And nC > 0 And nG > 0 Then
                GetQNumClasseGar = True
        Else
                GetQNumClasseGar = False

        End If
End Function

Function IsRigaSoloNumeri(sRiga)
	Dim k
	Dim bRet
	bRet = True
	If sRiga <> "" Then
		For k = 1 To Len(sRiga)
			If Mid(sRiga,k,1) <> " " Then
				If IsNumeric(Mid(sRiga,k,1)) = False Then
					bRet = False
					Exit For
				End If
			End If
		Next
		IsRigaSoloNumeri = bRet
	End If
End Function
Sub ConvertiColonna(aNum,sRiga,aNumColonna)
	Dim i,k,nClasse
	ReDim aV(0)
	sRiga = Trim(sRiga)
	i = InStr(sRiga,"  ")
	Do While i > 0
		sRiga = Replace(sRiga,"  "," ")
		i = InStr(sRiga,"  ")
	Loop
	Call SplitByChar("0 " & sRiga," ",aV)
	nClasse = UBound(aV)
	ReDim aNumColonna(nClasse)
	For k = 1 To nClasse
		aNumColonna(k) = aNum(Int(aV(k)))
	Next
End Sub

Ma da quale pianeta provenite tu e dynamo? :eek:

SPETTACOLAREEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE

GRAZIE infiniteeeeeeeeeeeeeeeeeeeeeeeeeeeeeee M A G O !
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 18 novembre 2025
    Bari
    07
    35
    82
    62
    16
    Cagliari
    60
    42
    25
    31
    51
    Firenze
    48
    36
    03
    35
    25
    Genova
    17
    57
    09
    66
    85
    Milano
    69
    78
    37
    85
    16
    Napoli
    08
    27
    17
    26
    68
    Palermo
    24
    77
    19
    79
    45
    Roma
    45
    14
    27
    21
    07
    Torino
    27
    51
    35
    76
    63
    Venezia
    52
    05
    46
    10
    53
    Nazionale
    23
    69
    01
    02
    38
    Estrazione Simbolotto
    Torino
    24
    44
    23
    21
    02

Ultimi Messaggi

Indietro
Alto