Novità

Proviamo a Testare le funzioni script di spazio Light e chiedere delucidazioni sulle difficoltà riscontrate

BuonGiorno a Tutti.
Dopo il piccolo cazziatone la mente viene stimolata a reagire ed come dico io ad ingegnarsi.
la mia soluzione era sotto gli occhi e l'avevo sempre usata,a volte il bicchiere mezzo pieno può risultare troppo pieno.

Codice:
Class Script
    Sub Main
        Dim Nu(5),Ru(1) As Integer
        Dim ini,fin,es As Integer
        Dim r,k,p As Integer
        Dim Tr As String
        fin = EstrazioniArchivio
        ini = fin - 10
        r = 1
        Scrivi ("Analitico Ruota di : " & NomeRuota(r) ,1)
        For es = fin To ini Step - 1
            For p = 1 To 5
                Nu(p) = Estratto(es,r,p)
                If EstrattoFrequenza (Nu(p),r,es,fin) > 1 Then Nu(p) = 0
                k = k + 1
                If Nu(p) = 0 Then Tr =  Tr & "--."
                If Nu(p) <> 0 Then Tr = Tr & Format2(Nu(p))  & "."
            Next
            Scrivi (es & vbTab & StringaNumeri(Nu,,1) & vbTab &   RimuoviLastChr(Tr,".")   )
            Tr = ""
        Next
    End Sub
End Class

 
Ciao a Tutti,
Beh! a me servono ancora un bel pò di cazziatoni, apprendo sempre di più ma resto sempre ad un livello diverso, se non chiedo troppo perchè non ci riesco come si applica quanto da te rappresentato a questo script.

Ho seguito riga per riga ma non riesco ad applicarlo... Se Puoi/ Vuoi così completo questo mio "cruccio"

Codice:
Class Script
    Sub Main
        Dim Ini,Fin,es,QE,ER As Integer
        Dim LS As Integer
        Dim K,K1,K2,KK As Integer
        Dim Nu(5),p,cad(5),r,ru(1) As Integer
        'r = InputBox("Quale RUOTA",,2)
        'QE = InputBox("Quante ESTRAZIONI",,100)
        LS = CInt(InputBox("Quale Livello",,2))
        Ini = EstrazioniArchivio - 100
        Fin = EstrazioniArchivio
        Scrivi ("------------------------ Analitico Sincrono ---------------------",1,,,ColoreRosso)
        Scrivi
        'Scrivi ("Sorte Scelta ----> " & NomeSorte(LS,True),1,,,ColoreBlu)
        Scrivi ("Sorte Scelta ----> " & LS,1,,,ColoreBlu)
        Scrivi
        'For es = Fin To Ini Step - 1' To idEstr
        For es = Ini To Fin ' Elenca i Ritardi Partendo Dal Maggiore
            For r = 1 To 11
                ru(1) = r
                For p = 1 To 5
                    Nu(p) = Estratto(es,r,p)
                    cad(p) = Estratto(es,r,p)
                    'If EstrattoFrequenza(nu(p),r,Ini,Fin) > 1 Then nu(p) = 0
                    If EstrattoFrequenza(Nu(p),r,es,Fin) > 1 Then Nu(p) = 0
                    K = K + 1
                    If Nu(p) = 0 Then KK = KK + 1
                Next
                K1 = K - KK
                If K1 = LS Then
                    K2 = K2 + 1
                    If Fin - es > 50 Then
                    'If Nu(p) = 0 Then Nu(p) = Format2("--")   
                        Scrivi ("Ritardo...",0,0)
                        Scrivi (FormatSpace(Fin - es,3),1,0)
                        Scrivi ("  " & K2 & "  " & GetInfoEstrazione(es) & "  ",1,0)
                        Scrivi (NomeRuota(r) & "  " & StringaNumeri(Nu,,1) & "    Livello..." & K - KK)
                    End If
                    If Fin - es <= 50 Then
                    'If Nu(p) = 0 Then Nu(p) = Format2("--") 
                        Scrivi ("Ritardo..." & FormatSpace(Fin - es,3) & "  " & K2 & "  " & GetInfoEstrazione(es) & "  ",1,0)
                        Scrivi (NomeRuota(r) & "  " & StringaNumeri(Nu,,1) & "    Livello..." & K - KK)
                    End If
                End If
                K = 0
                KK = 0
            Next
            'If K2 > 0 Then (Scrivi "-----------------------------------------------------------------------------",,,,ColoreBlu)
            If K2 > 0 Then
                Scrivi ("-----------------------------------------------------------------------------",,,,ColoreBlu)
            End If
            K2 = 0
        Next
    End Sub
End Class


Grazie come sempre.
 
Ciao a Tutti e ciao Xeroxs.
ti ho descritto i passaggi (pochi) che dovevano essere eseguiti.
ecco lo script poi per il resto e da performare come credi opportuno.

Codice:
Class Script
    Sub Main
        Dim Ini,Fin,es,QE,ER As Integer
        Dim LS As Integer
        Dim K,K1,K2,KK As Integer
        Dim Nu(5),p,cad(5),r,ru(1) As Integer
        Dim Tr As String ' Dichiaro la variabile string
        'r = InputBox("Quale RUOTA",,2)
        'QE = InputBox("Quante ESTRAZIONI",,100)
        LS = CInt(InputBox("Quale Livello",,2))
        Ini = EstrazioniArchivio - 100
        Fin = EstrazioniArchivio
        Scrivi ("------------------------ Analitico Sincrono ---------------------",1,,,ColoreRosso)
        Scrivi
        'Scrivi ("Sorte Scelta ----> " & NomeSorte(LS,True),1,,,ColoreBlu)
        Scrivi ("Sorte Scelta ----> " & LS,1,,,ColoreBlu)
        Scrivi
        For es = Ini To Fin ' Elenca i Ritardi Partendo Dal Maggiore
            For r = 1 To 11
                ru(1) = r
                For p = 1 To 5
                    Nu(p) = Estratto(es,r,p)
                    cad(p) = Estratto(es,r,p)
                    If EstrattoFrequenza(Nu(p),r,es,Fin) > 1 Then Nu(p) = 0
                    K+=1
                    If Nu(p) = 0 Then KK = KK + 1
                    '-----------------------------------------------------------------------------------
                    ' faccio il contronto condizionale tra numeri e stringa
                    If Nu(p) = 0 Then Tr = Tr & "--."
                    If Nu(p) <> 0 Then Tr = Tr & Format2(Nu(p)) & "."
                    ' al posto di stringanumeri(nu) scrivi la stringa Tr con rimuovi ultimo carattere
                    '------------------------------------------------------------------------------------
                Next
                K1 = K - KK
                If K1 = LS Then
                    K2 = K2 + 1
                    If Fin - es > 50 Then
                        Scrivi ("Ritardo...",0,0)
                        Scrivi (FormatSpace(Fin - es,3),1,0)
                        Scrivi ("  " & K2 & "  " & GetInfoEstrazione(es) & "  ",1,0)
                        Scrivi (NomeRuota(r) & "  " & RimuoviLastChr(Tr,".")  & "   <> Livello..." & K - KK)
                    End If
                    If Fin - es <= 50 Then
                        Scrivi ("Ritardo..." & FormatSpace(Fin - es,3) & "  " & K2 & "  " & GetInfoEstrazione(es) & "  ",1,0)
                        Scrivi (NomeRuota(r) & "  " & RimuoviLastChr(Tr,".") & "   <> Livello..." & K - KK)
                    End If
                End If
                Tr = "" ' azzera stringa
                K = 0
                KK = 0
            Next
            'If K2 > 0 Then (Scrivi "-----------------------------------------------------------------------------",,,,ColoreBlu)
            If K2 > 0 Then
                Scrivi ("-----------------------------------------------------------------------------",,,,ColoreBlu)
            End If
            K2 = 0
        Next
    End Sub
End Class
 
Vabbè (per Xeroxs) visto che lo sperimentato c'è anche la verifica esito.
lo script prende i valori analitici alla estrazioneUltima - 1 e verifica le sortite alla ultimaEstrazione.
Codice:
Class Script
    Sub Main
        Dim Ini,Fin,es,QE,ER As Integer
        Dim LS As Integer
        Dim K,K1,K2,KK As Integer
        Dim Nu(5),p,cad(5),r,ru(1) As Integer
        Dim Tr As String ' Dichiaro la variabile string
        Dim esito,aUscite() As String
        'r = InputBox("Quale RUOTA",,2)
        'QE = InputBox("Quante ESTRAZIONI",,100)
        LS = CInt(InputBox("Quale Livello",,2))
        Ini = EstrazioniArchivio - 100
        Fin = EstrazioniArchivio-1
        Dim fine = EstrazioniArchivio
        Scrivi ("------------------------ Analitico Sincrono ---------------------",1,,,ColoreRosso)
        Scrivi
        'Scrivi ("Sorte Scelta ----> " & NomeSorte(LS,True),1,,,ColoreBlu)
        Scrivi ("Sorte Scelta ----> " & LS,1,,,ColoreBlu)
        Scrivi
        For es = Ini To Fin ' Elenca i Ritardi Partendo Dal Maggiore
            For r = 1 To 11
                ru(1) = r
                For p = 1 To 5
                    Nu(p) = Estratto(es,r,p)
                    cad(p) = Estratto(es,r,p)
                    If EstrattoFrequenza(Nu(p),r,es,Fin) > 1 Then Nu(p) = 0
                    K+=1
                    If Nu(p) = 0 Then KK = KK + 1
                    '-----------------------------------------------------------------------------------
                    ' faccio il contronto condizionale tra numeri e stringa
                    If Nu(p) = 0 Then Tr = Tr & "--."
                    If Nu(p) <> 0 Then Tr = Tr & Format2(Nu(p)) & "."
                    ' al posto di stringanumeri(nu) scrivi la stringa Tr con rimuovi ultimo carattere
                    '------------------------------------------------------------------------------------
                    esito = "................................................................ "
                    If VerificaEsito (Nu,ru,1,fine,,,,aUscite) Then
                        For k3 As Integer = 0 To aUscite.GetUpperBound(0)
                            If aUscite(k3) <> "" Then esito = aUscite(k3)
                            'If aUscite(k3) = "" Then esito = " Nussun esito "
                        Next
                    End If
                    '..............................................................
                Next
                K1 = K - KK
                If K1 = LS Then
                    K2 = K2 + 1
                    If Fin - es > 50 Then
                        Scrivi ("Ritardo...",0,0)
                        Scrivi (FormatSpace(Fin - es,3),1,0)
                        Scrivi ("  " & K2 & "  " & GetInfoEstrazione(es) & "  ",1,0)
                        Scrivi (NomeRuota(r) & "  " & RimuoviLastChr(Tr,"."),1,0,,ColoreBlu)
                        Scrivi (   "   <> Livello..." & K - KK,0,0)
                        Scrivi (vbTab & esito,1,,,ColoreRosso)
                    End If
                    If Fin - es <= 50 Then
                        Scrivi ("Ritardo..." & FormatSpace(Fin - es,3) & "  " & K2 & "  " & GetInfoEstrazione(es) & "  ",1,0)
                        Scrivi (NomeRuota(r) & "  " & RimuoviLastChr(Tr,"."),1,0,,ColoreBlu)
                        Scrivi  ( "   <> Livello..." & K - KK,0,0)
                        Scrivi (vbTab & esito,1,,,ColoreRosso)
                    End If
                End If
                Tr = "" ' azzera stringa
                K = 0
                KK = 0
            Next
            'If K2 > 0 Then (Scrivi "-----------------------------------------------------------------------------",,,,ColoreBlu)
            If K2 > 0 Then
                Scrivi ("-----------------------------------------------------------------------------",,,,ColoreBlu)
            End If
            K2 = 0
        Next
    End Sub
End Class
 
ciao Mike ho provato a lanciare un tuo script ma non mi tornano i ridultati dul titardo sincrono
allego immagine
per mike.png

posto anche il test che ho fatto
Lo script è un test , potrebbe essere sbagliato e dare risultati errati
Codice:
Class Script
' non si garantisce la correttezza dei dati'
    Sub Main
        'inserire qui il proprio codice...
        Dim Numero As Byte,Ruota As Object
        Dim idEstr As Integer,nliv As Integer,RitMaxRu As Integer,nSto As Integer
        Dim rit As Integer,idTemp As Integer, nRSL As Integer
        Dim  idPrima As Integer
        Dim sSinc As String
        Dim aNumCeck (90) As Integer,aN(1) As Integer,aE() As Integer,aSinc() As Integer
        Dim aSep () As String={0,".",".",".",".",""}
        Dim aLiv() As String={1,2,3,4,5}
        Dim nlivRic As Byte =ScegliOpzione(aLiv,"Seleziona Livello da visualizzare")+1
        Dim iniStart As Decimal=Timer
        For Ruota=1 To 11
            Scrivi( "Script di prova . Non si garantisce che la statistica sia esatta ")
            Scrivi ("Ritardo max Storico " & nlivric & " x 1  dei numeri evidenziati nella colonna Tabellone ")
            Dim aTab () As String={"","ID_Conc","Data","ID_Ann",NomeRuota(Ruota,False),"Tabellone","RitCr","Liv","RSL","RSto_BA","RSto_CA","RSto_FI","RSto_GE","RSto_MI","RSto_NA","RSto_PA","RSto_RO","RSto_TO","RSto_VE","RSto_NZ"}
            Call InitTabella(aTab,RGB(89,89,89),,,RGB(240,240,255))
            Call SetColoreCellaTitolo( 8+Ruota,ColoreRosso,ColoreBianco)
            For Numero =1 To 90
                aNumCeck(Numero)=0
            Next
            For Numero=1 To 90
                If aNumCeck(Numero)=0 Then
                    aN(1)=Numero
                    idEstr= SerieUltima( aN,Ruota,1,,1,EstrazioniArchivio)
                    rit =EstrazioniArchivio-idEstr
                    ReDim aE(5)
                    Call GetNumeriRuota( idEstr,Ruota,aE)
                    nliv=0
                    sSinc= ""
                    idTemp=0
                    ReDim aSinc(5)
                    For p As Integer =1 To 5
                        aN(1)= aE(p)
                        idPrima= SeriePrima( aN,Ruota,1,,idEstr+1,EstrazioniArchivio)
                        If idPrima=0 Then
                            nliv+=1
                            aSinc(p)=aN(1)
                            sSinc=sSinc & FormatSpace(aN(1),2) & aSep(p)
                            aNumCeck(aN(1))=1
                        Else
                            sSinc=sSinc & "__" & aSep(p)
                            If idTemp<idPrima Then idTemp=idPrima
                        End If
                    Next
                    If idTemp = 0 Then idTemp = idEstr ' questo se nessun estratto è caduto
                    nRSL = EstrazioniArchivio - idTemp
                    'Dim aTab (8)  As String
                    If nliv= nlivric Then
                        aTab(1)=idEstr
                        aTab(2)=DataEstrazione(idEstr)
                        aTab(3)=IndiceAnnuale(idEstr)
                        aTab(4)=StringaNumeri(aE,,True)
                        aTab(5)=sSinc
                        aTab(6)=rit
                        aTab(7)=nliv
                        aTab(8)=nRSL
                        RitMaxRu=0
                        For ru As Object =1 To 11
                            nSto=SerieStorico(aSinc,ru,1)
                            aTab(8+ru)= nSto
                            If RitMaxRu<nSto Then RitMaxRu=nSto
                        Next
                        Call AddRigaTabella(aTab,)
                        Call SetColoreCellaRighe(0,RGB(89,89,89))
                        Call SetColoreCellaRighe(6,RGB(255,174,101))
                        For iCell As Integer=9 To 19
                            If aTab(icell)=RitMaxRu Then Call SetColoreCellaRighe(icell,RGB(0,220,220),ColoreBianco)
                        Next
                  
                    End If
                    aNumCeck(Numero)=1
                End If
            Next
            Call CreaTabella(6)
        Next
        ' il conteggio viene effettuato cosi per ovviare al passare del tempo che si impiega a scegliere dal menu'
        Scrivi ( FormattaSecondi( Timer-iniStart))
    End Sub
End Class
 
Ciao prof ,hai costruito una scheggia.
Mitico come sempre.
Purtroppo sono indietro con il nuovo linguaggio, oggi anziché cercare di replicare qualcosa di già fatto ,ho costruito riga per riga ex novo.
A volte sbagliando ,ma credo sua il miglior approccio.
Grazie per questo giocattolino:)
 
Ciao ILegend , si lo avevo visto anch'io, io ho usato il codice appropriato con i parametri che richiede e mi da quel risultato anche negativo (-1)
non saprei io ho usato il codice appropriato ed le risultanze sono quelle valide in certi casi ma poi -1 scorrendo la tabella.
Sicuramente è un problema di gestione mio script.
Vedi nella tua tabella usando il codice appropriato come si comporta.
 
QUANDO TALUNE FUNZIONI TORNANO -1 VUOL DIRE CHE NON SONO SRTATI PASSATRI PARAMETRI CORRETTI PER IL CALCOLO O CHE IL CALCOLO PER QUALCHE RAGIONE NON SI POTEVA FARE..NON SO SE SIA QUESTO IL CASO MA è PROBABILE
 
Buongiorno a Tutti,

Grazie Per quanto Proposto anche ad I-legend per il Tuo Script, è bello vedere che un argomento può essere visualizzato e creato in modo diverso, questo aiuta e sprona a chi vuole cimentarsi a creare non solo alternative ma anche qualcosa di nuovo.

Grazie Mike58 per avermi fatto completare lo script così anche per "La Verifica" leggendoti aiuta molto nel capire non solo il codice ma i vari incastri poi da utilizzare per le soluzioni da raggiungere.

Leggendo anche quello di I-Legend ( e rivedo con piacere) che non sei per nulla indietro con l 'apprendere questo nuovo progetto, la conoscenza già assorbita è un ottimo contributo anche per il VB.Net
 
QUANDO TALUNE FUNZIONI TORNANO -1 VUOL DIRE CHE NON SONO SRTATI PASSATRI PARAMETRI CORRETTI PER IL CALCOLO O CHE IL CALCOLO PER QUALCHE RAGIONE NON SI POTEVA FARE..NON SO SE SIA QUESTO IL CASO MA è PROBABILE
io ci ho provato anche in altri modi, e il codice mi riporta dati discordanti, a volte giusti in alcuni valori e in altri errati, stessa tabella.
Chi vuole faccia un analitico dimostrativo con livello 3 su bari con calcolo RsL da codice.
Altrimenti niente.... io non userò quel codice tanto ( per me ) ha una valenza poco significativa.
ciao a tutti
 
Rifacendo i calcoli in altro modo il codice è corretto e scrive tutti i valori corretti.
Evidentemente ha bisogno di parametri diversi a secondo dello svolgimento script.
cercherò di capire cosa non produce il mio primo script
ecco quello più semplice.
Codice:
Class Script
    Sub Main
        Dim T() As String
        Dim Nu(5),Ru(1),aN() As Integer
        Dim ini,fin,es As Integer
        Dim rit,rit1,r,x,k,RsL ,nliv  As Integer
        fin = EstrazioniArchivio
        ini = fin - 200
        r = 1
        T = {"Ruota","Ritardo","Numeri","Livello"," RsL "}
        Call InitTabella(T)
        For rit = 0 To 230
            For x = 1 To 90
                Nu(1) = x
                Ru(1) = r
                rit1 = SerieRitardo (Nu,Ru,1,fin,,,ini)
                If rit1 = rit Then
                    k +=1
                    ReDim Preserve aN(k)
                    aN(k) = x
                    RsL = RitSincronoDiLivello (x,r,fin,nliv,0)
                End If
            Next
            If k > 0 And nliv = 3 Then
                T = {NomeRuota(r), rit,StringaNumeri(aN),nliv,RsL }
                Call AddRigaTabella(T)
            End If
            k = 0
        Next
        CreaTabella(1)
    End Sub
End Class


Ruota
Ritardo
Numeri
Livello
RsL
Ba​
18​
43.75.82​
3​
16​
Ba​
16​
13.41.62​
3​
10​
Ba​
14​
15.33.84​
3​
11​
Ba​
13​
47.73.90​
3​
7​
Ba​
12​
16.18.76​
3​
5​
Ba​
11​
10.63.83​
3​
4​
Ba​
7​
28.86.88​
3​
5​
Ba​
6​
1.24.61​
3​
4​
Ba​
3​
19.60.69​
3​
1​
 
x xeroxs,(Modus operandi) corretto RsL su script di esempio adesso è allineato con i dati di ilegend.

Codice:
Class Script
    Sub Main
        Dim Nu(5),Ru(1),aN(5) As Integer
        Dim ini,fin,es As Integer
        Dim r,k,p,a,b  As Integer
        Dim Tr As String
        Dim rsl,nliv,nrit  As Integer
        Dim T() As String
        T = {"Es","Estratti","Analitico","Livello","Ritardo","Rsl"}
        Call InitTabella(T)
        fin = EstrazioniArchivio
        ini = fin - 200
        r = 1
        Scrivi ("Analitico Ruota di : " & NomeRuota(r) ,1)
        For es = fin To ini Step - 1
            For p = 1 To 5
                '-------------------------------------------------------
                a = Estratto(es,r,p)
                If EstrattoFrequenza(a,r,es,fin) > 1 Then a = 0
                If a <> 0 Then b = a
                rsl = RitSincronoDiLivello(b,r,fin,nliv ,nrit)
                '------------------------------------------------------
                aN(p) = Estratto(es,r,p)
                Nu(p) = Estratto(es,r,p)
                If EstrattoFrequenza (Nu(p),r,es,fin) > 1 Then Nu(p) = 0
                If Nu(p) <> 0 Then k = k + 1
                If Nu(p) = 0 Then Tr =  Tr & "__."
                If Nu(p) <> 0 Then Tr = Tr & Format2(Nu(p))  & "."
            Next
            If k > 0 And k = 3 Then
                T = {es,StringaNumeri(aN,,1),RimuoviLastChr(Tr,"."),k,fin-es,rsl}
                Call AddRigaTabella(T)
                'Scrivi (es & vbTab & StringaNumeri(aN,,1) & vbTab & StringaNumeri(Nu,,1) & vbTab &   RimuoviLastChr(Tr,".")  & vbTab & " Liv. " &  k  & " - Rit... " & fin-es  & vbTab & rsl)
            End If
            k = 0
            Tr = ""
        Next
        Call CreaTabella(4)
    End Sub
End Class

Analitico Ruota di : Ba


Es
Estratti
Analitico
Livello
Ritardo
Rsl
10025​
13.75.43.55.82​
__.75.43.__.82​
3​
18​
16​
10027​
41.16.62.13.55​
41.__.62.13.__​
3​
16​
10​
10029​
83.90.33.15.84​
__.__.33.15.84​
3​
14​
11​
10030​
01.73.47.90.88​
__.73.47.90.__​
3​
13​
7​
10031​
76.16.68.50.18​
76.16.__.__.18​
3​
12​
5​
10032​
83.10.63.25.23​
83.10.63.__.__​
3​
11​
4​
10036​
88.23.54.28.86​
88.__.__.28.86​
3​
7​
5​
10037​
06.01.61.23.24​
__.01.61.__.24​
3​
6​
4​
10040​
19.69.37.60.04​
19.69.__.60.__​
3​
3​
1​
 
Ciao a tutti:)
Domanda per il prof :)
In spaziometria i caratteri unicode accettavano font color e font SIZE in vb.net mi sembra che accetti unicode ma non si formatta. È così oppure sbaglio qualcosa?
Notte a tutti:)
 
Ciao a tutti:)
Domanda per il prof :)
In spaziometria i caratteri unicode accettavano font color e font SIZE in vb.net mi sembra che accetti unicode ma non si formatta. È così oppure sbaglio qualcosa?
Notte a tutti:)
ciao Legend , sinceramente non ho capito il problema
 
Ciao luigi, hai ragione senza un esempio concreto è impossibile.
Appena rientro a casa accendo il pc e faccio un esempio pratico.
 

Ultima estrazione Lotto

  • Estrazione del lotto
    venerdì 22 novembre 2024
    Bari
    27
    45
    81
    17
    55
    Cagliari
    78
    66
    45
    03
    14
    Firenze
    14
    90
    72
    88
    55
    Genova
    33
    23
    82
    81
    24
    Milano
    25
    79
    13
    42
    15
    Napoli
    39
    35
    65
    01
    14
    Palermo
    25
    83
    69
    50
    36
    Roma
    25
    71
    22
    10
    55
    Torino
    59
    30
    43
    74
    49
    Venezia
    39
    90
    77
    05
    35
    Nazionale
    82
    60
    62
    65
    59
    Estrazione Simbolotto
    Torino
    44
    12
    32
    06
    13

Ultimi Messaggi

Indietro
Alto