Novità

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

Xeroxs

Advanced Member >PLATINUM<
Ciao, Mike58

Testato è Funzionante nella ricerca, leggendo lo script riesco a capire e vedere le differenze con Spaziometria, è questo mi piace, in quanto pensavo fosse + complicato.

Vorrei chiederti solo una cosa nell'esporre i dati alcuni per ovvie ragioni visto il tipo di ricerca capita di avere dei doppioni di calcolo come posso eliminare il doppione? se è possibile ovvio.

Ti Allego schermata per capire quanto esposto

Tes - SpazioLight.jpg

come Vedi il 2 ed il terzo è lo stesso calcolo come altri..

Spero si possa fare per una visualizzazione migliore.

Grazie Ancora
 

Mike58

Advanced Member >PLATINUM PLUS<
si è vero, allora concateniamo i cicli for delle ruote



Casi
Algoritmo
Casi Esaminati
Casi Validi
Ultima Operazione
Numero Calcolato
Esito Ultima Oper
Colpo
Data Sortita
1​
1_Pa + 3_Ca​
13​
12​
19 + 9​
28​
2​
07/01/2022​
2​
5_Ge + 3_Fi​
13​
12​
30 + 50​
80​
To 80.--.--.--.--​
2​
07/01/2022​
3​
3_To + 1_Ge​
13​
12​
66 + 28​
4​
To --.--.--.--.04​
2​
07/01/2022​
4​
5_Rm + 4_Pa​
13​
12​
62 + 22​
84​
To --.--.84.--.--​
2​
07/01/2022​
5​
5_Nz + 2_Pa​
13​
12​
12 + 58​
70​
To --.--.--.70.--​
1​
04/01/2022​




Codice:
Class Script
    Sub Main
        Dim k , r ,es ,p , a ,b , nu(1) , pos(1) , ru(1) ,clp, c ,kk,kn,kd , ind  , nClp ,pos2(1) ,p2     As Integer
        Dim ini , fin , indx  As Integer
        Dim Uscite () , sUscite() , esito  As String
        Dim posta(1) As Single
        posta(1) = 1
        Dim TotNum() As Integer
        'inserire qui il proprio codice..
        '-------------------------------------------------------------------------
        Dim aT() As String = {"  Casi  ", "  Algoritmo  ", " Casi Esaminati ","  Casi Validi ", " Ultima Operazione " , "  Numero Calcolato  " ," Esito Ultima Oper " , " Colpo " , " Data Sortita "}
        InitTabella(aT,ColoreVerde,,100,ColoreBianco  )
        '-------------------------------------------------------------------------
        ini = EstrazioniArchivio - 160
        fin = EstrazioniArchivio
        r = InputBox ("Scegli la ruota ","RUOTA",9)
        indx = InputBox("Quale indice Mensile ","INDICE MENSILE ",1)
        Scrivi ("Estrazioni Esaminate ......... : " & fin-ini + 1)
        Scrivi ("Indice mensile considerato.... : " & indx )
        Scrivi (Space(28) &  Chr(174) & " Script In VbNet per SpazioLight 1.0.22   By Mike58 " & Chr(169),1,,,ColoreBlu ,120  )
        Scrivi ("Cerca Algoritmi sommativi sulle 10 Ruota e gioca sulla stessa Ruota ")
        For rrr As Object   = 1 To 10
            For p = 1 To 5

                For rr As Object = rrr + 1 To 11
                    For p2  = 1 To 5
                    For es = ini To fin
                       
                            If IndiceMensile(es) = indx Then
                                Call Messaggio ("Cerca Algoritmi sommativi su ruota scelta  & **** Script by Mike58 ***** " )
                                Call AvanzamentoElab (ini,fin,es)
                                ind = es + 1
                                k = k + 1
                                a = Estratto(es,rr,p)
                                b = Estratto(es,rrr,p2)
                                nu(1) = FuoriX((a+b),90)
                                ru(1) = r
                                pos(1) = p
                                pos2(1) = p2
                                If VerificaEsito (nu,ru,1,es+1,,14,clp,Uscite) Then
                                    'kk = kk + 1
                                    For c = 0 To Uscite.GetUpperBound(0)
                                        If Uscite (c)  <> "" Then
                                            kk = kk + 1
                                        End If
                                    Next
                                End If
                            End If
                       
                    Next
                    kd = k - (kk)
                    If kd <= 1 Then
                        kn = kn + 1
                        ReDim Preserve TotNum(kn)
                        TotNum(kn) = nu(1)
                        '-------------------------------------------------------------------------------------
                        esito = ""
                        If   VerificaEsito (nu,ru,1,ind,,14,nClp,sUscite) Then
                            For cc As Integer  = 0 To sUscite.GetUpperBound(0)
                                If sUscite(cc) <> "" Then esito = sUscite (cc)
                            Next
                        End If
                        '-------------------------------------------------------------------------------------
                        Dim aV() As String
                        ReDim aV(aT.GetUpperBound(0))
                        aV(0) = kn
                        aV(1) = pos(1) & "_" & NomeRuota(rr) & " + " & pos2 (1) & "_" & NomeRuota(rrr)
                        aV(2) = k
                        aV(3) = kk
                        aV(4) = a & " + " & b
                        aV(5) = nu(1)
                        aV(6) = esito
                        aV(7) = nClp
                        aV(8) = DataEstrazione ((ind-1) + nClp )
                        If esito = "" Then
                            Call AddRigaTabella(aV,ColoreGiallo  ,,100,ColoreRosso  )
                        Else
                            Call AddRigaTabella(aV,ColoreMagenta    ,,100,ColoreBianco    )
                        End If
                    End If
                    k = 0 : kk = 0
                    Next
                Next
            Next
        Next
        Call CreaTabella()
        Scrivi ("Numeri Ricavati...... : " & StringaNumeri(TotNum ),1,,,ColoreBlu,150)
        For ess As Integer = ind To fin
            ImpostaGiocata (1,TotNum ,ru ,posta ,,1)
            Gioca (ess,1)
        Next
    End Sub
End Class
 
L

LuigiB

Guest
Mike , nella prossima versione che pubblicherà Edoardo ho inserito queste due funzioni che tanto volevi ...

SetColoreCellaTitolo(IdCol As Integer, Optional ColoreSfondo As Integer = -1, Optional ColoreCarattere As Integer = -1)
SetColoreCellaRighe(IdCol As Integer, Optional ColoreSfondo As Integer = -1, Optional ColoreCarattere As Integer = -1)

ora non so quando pubblicherà pero darto che ha aggiunto anche lui delel cose e corretto delle altre questa volta tocca a lui ..
 
L

LuigiB

Guest
ecco a voi un video in cui in 10 minuti ho cercato di spiegare come scrivere i prori script direttamente in vbnet , vedrete che se all'inizio la cosa vi riuslterà poco familiare poi vi renderete conto d iquanto sia utile ..



scusate per il microfono che è una affare trovato insieme alla scatola di una motherboard di qualche anno fa... :)
 

Mike58

Advanced Member >PLATINUM PLUS<
Ciao Luigi, visto il filmato , peccato per l'audio si capisce qualcosa ma ci vuole applicazione (vedremo)
Purtroppo nel testare i codici e volendo creare uno script delle tipologie di ambi sugli estratti del quadro estrazionale , qualcosa non mi riesce
tipo le differenze i dimatrali e diametraliDecina , radicali.
Chiaro questo script con questa tipologia di costrutto è funzionante su spaziometria ma in vbnet qualcosa non mi riesce.
ci dai un occhio.
Codice:
Class Script
    Sub Main
        Dim k , p ,p1 ,p2  As Integer
        Dim Nu(5) , Ru(1) , Dec(5)  As Integer
        Dim amboDec , amboCad , amboFig , amboCons , amboDiam , amboRad ,DiaD , amboVert  As String
        Dim fin As Integer = EstrazioniArchivio
        'inserire qui il proprio codice..
        '-------------------------------------------------------------------------
        Dim aT() As String = {"  Ruota  ", "  Estratti  ", "  amboDecina  ", "   amboCadenza   ", "  amboFigura ", "  amboCons  ","  amboDiametrale  ", _
         " AmboRad ", " AmboDiamD "}
        InitTabella(aT,ColoreVerde,,,ColoreBianco  )
        Dim aV() As String
        ReDim aV(aT.GetUpperBound(0))
        '-------------------------------------------------------------------------
        Scrivi ("Quadro Estrazionale del ..... " & GetInfoEstrazione(fin),1)
        For r As Integer = 1 To 11
            For p  = 1 To 5
                Nu(p) = Estratto(fin,r,p)
            Next
            For p1 = 1 To 4
                For p2 = p1 + 1 To 5
                    If Unita(Nu(p1)) = Unita(Nu(p2)) Then amboDec = amboDec & Nu(p1) & "-" & Nu(p2) & "  "
                    If Cadenza(Nu(p1)) = Cadenza(Nu(p2)) Then amboCad = amboCad & Nu(p1) & "-" & Nu(p2) & "  "
                    If Figura(Nu(p1)) = Figura(Nu(p2)) Then amboFig = amboFig & Nu(p1) & "-" & Nu(p2) & "  "
                    If Differenza_ab(Nu(p1),Nu(p2)) = 1 Then amboCons = amboCons & Nu(p1) & "-" & Nu(p2) & " "
                    If Differenza_ab(Nu(p1),Nu(p2)) = 45  Then amboDiam = amboDiam & Nu(p1) & "-" & Nu(p2) & " " ' questo differenza non la calcola
                    If Radicale(Nu(p1)) And Radicale(Nu(p2)) And Radicale(Nu(p1)) = Radicale(Nu(p2)) Then amboRad = amboRad & Nu(p1) & "-" & Nu(p2) & "  "
                    If(Nu(p1)) = DiametraleInDecina (Nu(p2)) Then DiaD = DiaD & Nu(p1) & "-" & Nu(p2) & "  " ' non corretto

                Next
            Next
            aV(0) = NomeRuota(r)
            aV(1) = StringaNumeri(Nu)
            aV(2) = amboDec
            aV(3) = amboCad
            aV(4) = amboFig
            aV(5) = amboCons
            aV(6) = "-- " 'amboDiam
            aV(7) = amboRad
            aV(8) = "--" ' DiaD
            Call AddRigaTabella(aV, ,,100 )
            amboDec = ""
            amboCad = ""
            amboFig = ""
            amboCons = ""
            amboDiam = ""
            amboRad = ""
DiaD = ""
        Next
        Call CreaTabella()
    End Sub
End Class
 

Mike58

Advanced Member >PLATINUM PLUS<
Lo script su citato alla estrazione del 7-1 2022 funziona come da schermata
invece alla 8-1-2022 non scrive nulla.

Quadro Estrazionale del ..... 10026 - 159 - 07/01/2022


Ruota
Estratti
amboDecina
amboCadenza
amboFigura
amboCons
amboDiametrale
AmboRad
AmboDiamD
Ba​
62.42.59.71.63​
62-63​
62-42​
62-71​
62-63​
--​
62-42 62-71 62-63 42-71 42-63 71-63​
--​
Ca​
45.48.2.32.70​
45-48​
2-32​
--​
45-48 45-32 48-32​
--​
Fi​
84.60.51.59.46​
51-59​
60-51​
60-59​
--​
84-51 84-46 51-46​
--​
Ge​
74.75.39.69.84​
74-75​
74-84 39-69​
75-39 75-84 39-84​
74-75​
--​
74-75 74-84 75-84​
--​
Mi​
89.53.83.14.51​
89-83 53-51​
53-83​
89-53​
--​
53-83 53-14 53-51 83-14 83-51 14-51​
--​
Na​
1.46.22.60.39​
1-46​
--​
--​
Pa​
37.16.88.25.36​
37-36​
16-36​
16-88 16-25 88-25​
37-36​
--​
37-16 37-25 37-36 16-25 16-36 25-36​
--​
Rm​
79.40.16.57.14​
16-14​
79-16​
--​
16-57 16-14 57-14​
--​
To​
80.37.84.14.4​
80-84​
84-14 84-4 14-4​
--​
37-84 37-14 84-14​
--​
Ve​
58.36.62.53.8​
58-53​
58-8​
62-53 62-8 53-8​
--​
58-36 58-62 58-53 36-62 36-53 62-53​
--​
Nz​
42.49.25.79.34​
42-49​
49-79​
25-79 25-34 79-34​
--​
42-25 42-34 25-34​
--​
 
L

LuigiB

Guest
ciao Mike , mi fai n esempio solo delle funzion iche non funzionano ?

in spaziometria
1641675945519.png

1641675959693.png

in LottoProject

1641676067444.png

1641676081477.png
 

Allegati

  • 1641676040395.png
    1641676040395.png
    15,6 KB · Visite: 8

Mike58

Advanced Member >PLATINUM PLUS<
ciao Luigi questo è lo script con in codici in spaziometria
se riporto gli stessi codici stringa in spazioLight qualcosa non torna
tipo la differenza_ab = 1 funzione ma non funziona a 45 o altro numero tipo 30 per l'ambo simmetrico.
ho provato gli altri codici del caso ma non mi riesce di farli scrivere.


Codice:
Sub Main
   Dim Nu(5),Ru(1),cad(5),dec(5),fig(5),gem(5),dia(5)
   Dim T,V
   Ini = EstrazioneFin - 10
   fin = EstrazioneFin
   For es = fin To Ini Step - 1
      Scrivi GetInfoEstrazione(es) & vbTab & "**** Script By Mike58 ****",1,,,1,3
      T = Array(T,"Ruota","Estratti","Ambo Cadenza","Ambo Decina","Ambo Figura","Tipo Fig","Gemello","NumPrimi","amboCons","NumPari","NumDispari","AmboDiam","AmboSimm","AmboVert","DiamD","AmboRad")
      Call InitTabella(T,RGB(187,187,187),,3,5)
      par = 0 : dis = 0
      For r = 1 To 11
         If r = 11 Then r = 12
         For p = 1 To 5
            Nu(p) = Estratto(es,r,p)
            cad(p) = Cadenza(Nu(p))
            dec(p) = Decina(Nu(p))
            fig(p) = Figura(Nu(p))
            gem(p) = Gemello(Nu(p))
            If Gemello(Nu(p)) Then ff = ff & Nu(p) & " "
            If Primo(Nu(p)) Then pp = pp & Nu(p) & " "
            da = SommaEstratti(es,r)
            If pari(Nu(p)) Then par = par + 1
            If dispari(Nu(p)) Then dis = dis + 1
            Ru(1) = r
         Next
         If NumeriRipetutiRilevatiV(cad,vetC) Then
            aa = StringaNumeri(vetC)
         Else
            aa = "--"
         End If
         If NumeriRipetutiRilevatiV(dec,vetD) Then
            bb = StringaNumeri(vetD)
         Else
            bb = "--"
         End If
         If NumeriRipetutiRilevatiV(fig,vetF) Then
            cc = StringaNumeri(vetF)
         Else
            cc = "--"
         End If
         If NumeriRipetutiRilevatiV(dia,vetDD) Then
            dd = StringaNumeri(vetF)
         Else
            dd = "--"
         End If
         For p1 = 1 To 4
            For p2 = p1 + 1 To 5
               If Cadenza(Nu(p1)) = Cadenza(Nu(p2)) Then amboCad = amboCad & Nu(p1) & "-" & Nu(p2) & "  "
               If Distanza(Nu(p1),Nu(p2)) = 45 Then ambodiamet = ambodiamet & Nu(p1) & "-" & Nu(p2) & "  "
               If Distanza(Nu(p1),Nu(p2)) = 30 Then ambosimm = ambosimm & Nu(p1) & "-" & Nu(p2) & "  "
               If(Nu(p1)) = Vert(Nu(p2)) Then ambovert = ambovert & Nu(p1) & "-" & Nu(p2) & "  "
               If(Nu(p1)) = DiametraleD(Nu(p2)) Then diaD = diaD & Nu(p1) & "-" & Nu(p2) & "  "
               If Decina(Nu(p1)) = Decina(Nu(p2)) Then amboDec = amboDec & Nu(p1) & "-" & Nu(p2) & "  "
               If Figura(Nu(p1)) = Figura(Nu(p2)) Then amboFig = amboFig & Nu(p1) & "-" & Nu(p2) & "  "
               If Radicale(Nu(p1)) And Radicale(Nu(p2)) And Radicale(Nu(p1)) = Radicale(Nu(p2)) Then amboRad = amboRad & Nu(p1) & "-" & Nu(p2) & "  "
               'If Radicale(a) And Radicale(b) And Radicale(a) = Radicale(b) Then
               If Differenza(Nu(p1),Nu(p2)) = 1 Then ambocons = ambocons & Nu(p1) & "-" & Nu(p2) & " "

            Next
         Next
         V = Array(V,SiglaRuota(r),StringaEstratti(es,r),amboCad,amboDec,amboFig,cc,ff,pp,ambocons,par,dis,ambodiamet,ambosimm,ambovert,diaD,amboRad)
         Call AddRigaTabella(V)
         ff = ""
         pp = ""
         da = ""
         par = 0
         dis = 0
         diaD = ""
         amboCad = ""
         ambodec = ""
         amboFig = ""
         ambodiamet = ""
         ambosimm = ""
         ambovert = ""
         amboRad = ""
         ambocons = ""
      Next
      Call SetTableWidth("100%")
      CreaTabella
   Next
End Sub
 
L

LuigiB

Guest
cioa Mike , stavo cercando di capire il tuo problema estraendolo dall script che hai postato e riferendomi solo alle funzioni che sostieni non funzionare.
Quindi ho fatto questo script per spazioometria e un altro uguale per il nuovo programma

spaziometria
Codice:
Sub Main
    'inserire qui il proprio codice...
   
        For n = 1 To 90
            Scrivi ( n & " -->" & DiametraleD ( n))
        Next
        For n   = 1 To 90
            For nn = 90 To 1 Step -1
                Scrivi ( "Diff " & n & "," & nn & "---->" & Differenza(n ,nn))
       
            Next
        Next

       For n   = 90  To 1 Step -1
            For nn = 1 To 90
                Scrivi ( "Diff " & nn & "," & n  & "---->" & Differenza(nn ,n))
       
            Next
        Next
End Sub

programma nuovo

Codice:
Class Script
    Sub Main
        'inserire qui il proprio codice...
        Dim n As Integer , nn as integer
        For n  = 1 To 90
            Scrivi ( n & " -->" & DiametraleInDecina ( n))
        Next
        For n   = 1 To 90
            For nn = 90 To 1 Step -1
                Scrivi ( "Diff " & n & "," & nn & "---->" & Differenza_ab(n ,nn))
            Next
        Next
        For n   = 90 To 1 step -1
            For nn = 1 To 90
                Scrivi ( "Diff " & n & "," & nn & "---->" & Differenza_ab(n ,nn))
            Next
        Next
    End Sub
End Class


i risultati li ho incollati in due colonne affiancate in excel , nella colonna A e nella colonna C

poi ho scritt oquesto semlice codice per controllare ,e mi è uscto 0 deifferenze ...

quindi nelle funzioni non ci sono errori sembrerebbe ..

Codice:
Sub Controlla()
    Dim k As Integer
    Dim nDiv As Integer
   
    For k = 1 To 16290
        If Foglio1.Cells(k, 1) <> Foglio1.Cells(k, 3) Then
            nDiv = nDiv + 1
        End If
    Next
   
    MsgBox "Diversi : " & nDiv
   
   
End Sub
 

i legend

Premium Member
Ciao a tutti
provato la funzione GetNumeriruote()
allora se ho interpretato bene
questa funzione ci restituisce i numeri sortiti su ciascuna ruota in una data estrazione
utilizzo per scrivere i numeri in stile Browser oppure in stile tipo archivio
ecco lo script
Codice:
Class Script
    Sub Main
        'inserire qui il proprio codice...
        Dim aNum(,) As Integer
        Dim idEstr As Integer =EstrazioniArchivio
        Call GetNumeriRuote(idEstr,aNum )
        Dim i As Integer,j As Integer
        Scrivi ("Conc: " & idEstr )
        Scrivi( "Data: " & DataEstrazione(idEstr))
        Scrivi ("IdM:  "& IndiceMensile(idEstr) )
        For i=1 To (aNum.getupperbound(0))
            Scrivi (FormatSpace(NomeRuota(i,False),12,1),1,0,RGB(232,231,235))
            Scrivi ("|",1,0)
            For j=1 To (aNum.getupperbound(1))
                Scrivi (FormatSpace(aNum(i,j),2,1)&" ",0,0)
            Next
            Scrivi
        Next
        'scrivo un concorso tipo archivio
        Scrivi()
        Scrivi ( idEstr & "|",,0)
        Scrivi(  DataEstrazione(idEstr)& "|",,0)
        Scrivi (IndiceMensile(idEstr)& "|" ,,0)
        For i=1 To (aNum.getupperbound(0))
            For j=1 To (aNum.getupperbound(1))
                Scrivi (Format2(aNum(i,j)),0,0)
            Next
            'Scrivi ("|",1,0)
        Next
    End Sub
End Class
 

Mike58

Advanced Member >PLATINUM PLUS<
Si Luigi, se faccio lo sesso ragionamento su uno script ad oc per la differenza_ab voluta scrive i risultati.
Purtroppo non capisco il perchè nel mio script non lo scrive e non capisco anche perchè all'utima estrazione non scrive neanche la tabella, pur remmando il valore diametrale che non scrive.
Se hai voglia di capire magari ci dai una dritta (perchè penso che sia questo che frena qualcuno altro a cimentarsi in questo linguaggio le risultanze senza risultati).

Ciao e grazie come sempre per tutto.
 

Mike58

Advanced Member >PLATINUM PLUS<
Legend nel tipo archivio devi azzerare la scrittura in orizzontale con scrivi ()
Purtroppo facciamo anche errori banali

Codice:
Class Script
    Sub Main
        'inserire qui il proprio codice...
        Dim aNum(,) As Integer
        Dim idEstr As Integer =EstrazioniArchivio
        Call GetNumeriRuote(idEstr,aNum )
        Dim i As Integer,j As Integer
        Scrivi ("Conc: " & idEstr )
        Scrivi( "Data: " & DataEstrazione(idEstr))
        Scrivi ("IdM:  "& IndiceMensile(idEstr) )
        For i=1 To (aNum.getupperbound(0))
            Scrivi (FormatSpace(NomeRuota(i,False),12,1),1,0,RGB(232,231,235))
            Scrivi ("|",1,0)
            For j=1 To (aNum.getupperbound(1))
                Scrivi (FormatSpace(aNum(i,j),2,1)&" ",0,0)
            Next
            Scrivi
        Next
        'scrivo un concorso tipo archivio
        Scrivi()
        Scrivi ( idEstr & "|",,0)
        Scrivi(  DataEstrazione(idEstr)& "|",,0)
        Scrivi (IndiceMensile(idEstr)& "|" ,,0)
        Scrivi () ' azzera
        For i=1 To (aNum.getupperbound(0))
            For j=1 To (aNum.getupperbound(1))
                Scrivi (Format2(aNum(i,j)),0,0)
            Next
            Scrivi () ' azzera
            'Scrivi ("|",1,0)
        Next
    End Sub
End Class
 

i legend

Premium Member
ciao Mike , nessun errore almeno credo
volevo scrivere i numeri su una sola riga tipo archivio
ecco l immagineimmDes.png
sono divisi concorso |data|idMese| gli estratti formattati senza divisori tra ruote
 
L

LuigiB

Guest
Si Luigi, se faccio lo sesso ragionamento su uno script ad oc per la differenza_ab voluta scrive i risultati.
Purtroppo non capisco il perchè nel mio script non lo scrive e non capisco anche perchè all'utima estrazione non scrive neanche la tabella, pur remmando il valore diametrale che non scrive.
Se hai voglia di capire magari ci dai una dritta (perchè penso che sia questo che frena qualcuno altro a cimentarsi in questo linguaggio le risultanze senza risultati).

Ciao e grazie come sempre per tutto.
quell oche è sicuro è che la funzione si comporta come dovrebbe e non dovrebbe comportarsi ambiguamente dentro uno script ,m è pure vero che lo script in spaziometria è scritto senza dichiarare manco una variabile e che nella tabella ci finiscono anche valori nulli , una cosa molto importante in vb net è che le stringhe sono oggetti e pertanto vanno inizializzate prima di usare per una eventiale concatenazione

è sempre bne fare dim s as string = ""

mi rimetti lo script cxhe non mostra i dati dell'ultima estrazione ?
 

Mike58

Advanced Member >PLATINUM PLUS<
ecco lo script del quadro estrazionale.
scrive con
Dim fin As Integer = EstrazioniArchivio - 1
e non scrive la tabella con
Dim fin As Integer = EstrazioniArchivio

Sicuramente c'è qualche errore di costrutto.



Codice:
Class Script
    Sub Main
        Dim k , p ,p1 ,p2  As Integer
        Dim Nu(5) , Ru(1) , Dec(5)  As Integer
        Dim amboDec , amboCad , amboFig , amboCons , amboDiam , amboRad ,DiaD , amboVert  As String
        Dim fin As Integer = EstrazioniArchivio
        'inserire qui il proprio codice..
       
        '-------------------------------------------------------------------------
        Dim aT() As String = {"  Ruota  ", "  Estratti  ", "  amboDecina  ", "   amboCadenza   ", "  amboFigura ", "  amboCons  ","  amboDiametrale  ", _
         " AmboRad ", " AmboDiamD "}
        InitTabella(aT,ColoreVerde,,,ColoreBianco  )
        Dim aV() As String
        ReDim aV(aT.GetUpperBound(0))
        '-------------------------------------------------------------------------
        Scrivi ("Quadro Estrazionale del ..... " & GetInfoEstrazione(fin),1)
        For r As Integer = 1 To 11
            For p  = 1 To 5
                Nu(p) = Estratto(fin,r,p)
            Next
            For p1 = 1 To 4
                For p2 = p1 + 1 To 5
                    amboDiam = ""
                    DiaD = ""
                    amboRad = ""
'amboCons =  "--"
                    If Unita(Nu(p1)) = Unita(Nu(p2)) Then amboDec = amboDec & Nu(p1) & "-" & Nu(p2) & "  "
                    If Cadenza(Nu(p1)) = Cadenza(Nu(p2)) Then amboCad = amboCad & Nu(p1) & "-" & Nu(p2) & "  "
                    If Figura(Nu(p1)) = Figura(Nu(p2)) Then amboFig = amboFig & Nu(p1) & "-" & Nu(p2) & "  "
                    If Differenza_ab(Nu(p1),Nu(p2)) = 1 Then amboCons = amboCons & Nu(p1) & "-" & Nu(p2) & " "
                    If Differenza_ab(Nu(p1),Nu(p2)) = 45  Then amboDiam = amboDiam & Nu(p1) & "-" & Nu(p2) & " " ' questo differenza non la calcola
                    If (Nu(p1)) = Radicale(Nu(p2)) Then amboRad = amboRad & Nu(p1) & "-" & Nu(p2) & "  "
                    If(Nu(p1)) = DiametraleInDecina (Nu(p2)) Then DiaD = DiaD & Nu(p1) & "-" & Nu(p2) & "  " ' non corretto

                Next
            Next
            aV(0) = NomeRuota(r)
            aV(1) = StringaNumeri(Nu)
            aV(2) = amboDec
            aV(3) = amboCad
            aV(4) = amboFig
            aV(5) = amboCons
            aV(6) = amboDiam
            aV(7) = amboRad
            aV(8) = DiaD
            Call AddRigaTabella(aV, ,,100 )
            amboDec = ""
            amboCad = ""
            amboFig = ""
            amboCons = ""
            amboDiam = ""
            amboRad = ""
DiaD = ""
        Next
        Call CreaTabella()
    End Sub
End Class
 

i legend

Premium Member
testato la funzione FormatSpace
sela stringa è vuota lascia lo spazio?
decina naturale e decinacabalistica restituiscono -1
non so se siano errori miei o bugs
allego lo script
Codice:
Class Script
    Sub Main
        'inserire qui il proprio codice...
        Dim Fin As Integer=EstrazioniArchivio
        Dim ini As Integer=Fin-9
        Dim  e As Integer,cad As Integer,dec As Integer
        For idestr As Integer=ini To Fin
            Scrivi (idestr)
            For R As Integer=1 To 11
                Scrivi (NomeRuota(R)&" ",1,0)
                Dim aEstr(5) As Integer
                Call GetNumeriRuota(idestr,R,aEstr)
                Scrivi (StringaNumeri(aEstr))
                Dim aCad(9) As String,aDecNat(9) As String
              
                For p As Integer=1 To 5
                    e=aEstr(p)
                    cad=Cadenza(e)
                    dec=DecinaMatematica(e)
                    aCad(cad)=aCad(cad)& e & " "
                    aDecNat(dec)=aDecNat(dec)& e & " "
                Next
                Scrivi (Space(2)&FormatSpace("|Decina ",18,1)&"          |        Cadenza     ")
                For i As Integer =0 To (aDecNat.getupperbound(0))
                    Scrivi (i & " | " & FormatSpz(aDecNat(i),15) & i &" | "&FormatSpz(aCad(i),15))
                Next
                Scrivi ()
            Next
            Scrivi ("-----------------------")
        Next
    End Sub
    Function FormatSpz(S,l)
        Dim st
        If S="" Then
            st=Space(l)
        Else
            st=FormatSpace(S,l,1)
        End If
        S=st
        Return S
    End Function
End Class
Buona notte ;)
 

i legend

Premium Member
piccolo script per testare figura decine cadenze e controfigure
Codice:
Class Script
    Sub Main
        'inserire qui il proprio codice...
        For n As Byte =1 To 90
            Scrivi (Format2(n)  &" |  " & DecinaNaturale(n)&" | " & DecinaMatematica(n)&" | " & DecinaCabalistica(n)& " | " & Figura(n)& "  |  " & ControFigura(n)& " | " & cadenza(n))
        Next
    End Sub
End Class
controfigura del 38 restituisce -1 ,gli altri valori non so se siano esatti perche non li utilizzo spesso
le decine tranne la matematica restituiscono -1
 
L

LuigiB

Guest
Mike con l'ultima versione disponibile il tuo script diventa cosi , non so se l'ho tradotto bene perche certe cose non le capivo ...ad ogni modo mancavano delel funzioni che ho aggiunto nelgli script.


Codice:
Class Script
    Sub Main
     Dim Nu(5) As Integer, Ru(1) As Integer, cad(5) As Integer, dec(5) As Integer, fig(5) As Integer, gem(5) As Integer, dia(5) As Integer
        Dim T() As String, V() As String
        Dim Ini As Integer, Fin As Integer, Es As Integer, p As Integer, r As Integer, da As String, p1 As Integer, p2 As Integer
        Dim par As Integer, dis As Integer
        Dim aa As String = "", bb As String = "", cc As String = "", dd As String = "", ff As String = "", pp As String = ""
        Dim diaD As String = "", amboCad As String = "", ambodec As String = "", amboFig As String = "", ambodiamet As String = "", ambosimm As String = "", ambovert As String = "", amboRad As String = "", ambocons As String = ""
        Dim VetC() As Integer, VetF() As Integer, VetD() As Integer, VetDD() As Integer

        Ini = EstrazioniArchivio() - 10
        Fin = EstrazioniArchivio()

        For Es = Fin To Ini Step -1
            Scrivi(GetInfoEstrazione(Es) & vbTab & "**** Script By Mike58 ****", True,,, ColoreRosso, 300)
            T = {"", "Ruota", "Estratti", "Ambo Cadenza", "Ambo Decina", "Ambo Figura", "Tipo Fig", "Gemello", "NumPrimi", "amboCons", "NumPari", "NumDispari", "AmboDiam", "AmboSimm", "AmboVert", "DiamD", "AmboRad"}
            Call InitTabella(T)
            par = 0 : dis = 0
            For r = 1 To 11

                For p = 1 To 5
                    Nu(p) = Estratto(Es, r, p)
                    cad(p) = Cadenza(Nu(p))
                    dec(p) = DecinaNaturale(Nu(p))
                    fig(p) = Figura(Nu(p))
                    gem(p) = Gemello(Nu(p))
                    If Gemello(Nu(p)) Then ff = ff & Nu(p) & " "
                    If IsPrimo(Nu(p)) Then pp = pp & Nu(p) & " "
                    da = SommaEstratti(Es, r)
                    If IsPari(Nu(p)) Then par = par + 1
                    If IsDispari(Nu(p)) Then dis = dis + 1
                    Ru(1) = r
                Next
                If NumeriRipetutiRilevatiV(cad, VetC) Then
                    aa = StringaNumeri(VetC)
                Else
                    aa = "--"
                End If
                If NumeriRipetutiRilevatiV(dec, VetD) Then
                    bb = StringaNumeri(VetD)
                Else
                    bb = "--"
                End If
                If NumeriRipetutiRilevatiV(fig, VetF) Then
                    cc = StringaNumeri(VetF)
                Else
                    cc = "--"
                End If
                If NumeriRipetutiRilevatiV(dia, VetDD) Then
                    dd = StringaNumeri(VetF)
                Else
                    dd = "--"
                End If
                For p1 = 1 To 4
                    For p2 = p1 + 1 To 5
                        If Cadenza(Nu(p1)) = Cadenza(Nu(p2)) Then amboCad = amboCad & Nu(p1) & "-" & Nu(p2) & " "
                        If Distanza(Nu(p1), Nu(p2)) = 45 Then ambodiamet = ambodiamet & Nu(p1) & "-" & Nu(p2) & " "
                        If Distanza(Nu(p1), Nu(p2)) = 30 Then ambosimm = ambosimm & Nu(p1) & "-" & Nu(p2) & " "
                        If (Nu(p1)) = Vertibile(Nu(p2)) Then ambovert = ambovert & Nu(p1) & "-" & Nu(p2) & " "
                        If (Nu(p1)) = DiametraleInDecina(Nu(p2)) Then diaD = diaD & Nu(p1) & "-" & Nu(p2) & " "
                        If DecinaNaturale(Nu(p1)) = DecinaNaturale(Nu(p2)) Then ambodec = ambodec & Nu(p1) & "-" & Nu(p2) & " "
                        If Figura(Nu(p1)) = Figura(Nu(p2)) Then amboFig = amboFig & Nu(p1) & "-" & Nu(p2) & " "
                        If Radicale(Nu(p1)) And Radicale(Nu(p2)) And Radicale(Nu(p1)) = Radicale(Nu(p2)) Then amboRad = amboRad & Nu(p1) & "-" & Nu(p2) & " "
                        'If Radicale(a) And Radicale(b) And Radicale(a) = Radicale(b) Then
                        If Differenza(Nu(p1), Nu(p2)) = 1 Then ambocons = ambocons & Nu(p1) & "-" & Nu(p2) & " "
                    Next
                Next
                V = {"", NomeRuota(r, True), StringaEstratti(Es, r), amboCad, ambodec, amboFig, cc, ff, pp, ambocons, par, dis, ambodiamet, ambosimm, ambovert, diaD, amboRad}
                Call AddRigaTabella(V)
                ff = ""
                pp = ""
                da = ""
                par = 0
                dis = 0
                diaD = ""
                amboCad = ""
                ambodec = ""
                amboFig = ""
                ambodiamet = ""
                ambosimm = ""
                ambovert = ""
                amboRad = ""
                ambocons = ""
            Next

            CreaTabella()
        Next
    End Sub
End Class
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 23 aprile 2024
    Bari
    47
    22
    34
    20
    50
    Cagliari
    33
    14
    86
    02
    62
    Firenze
    61
    22
    44
    19
    26
    Genova
    21
    12
    57
    82
    55
    Milano
    66
    05
    11
    70
    30
    Napoli
    05
    23
    25
    52
    73
    Palermo
    23
    44
    49
    71
    65
    Roma
    82
    37
    59
    34
    71
    Torino
    26
    42
    66
    15
    58
    Venezia
    57
    06
    68
    54
    84
    Nazionale
    21
    79
    49
    03
    01
    Estrazione Simbolotto
    Genova
    24
    02
    19
    03
    27
Alto