Novità

Script da Sistemare

  • Creatore Discussione Creatore Discussione jure
  • Data di inizio Data di inizio

jure

Premium Member
Ho Trovato nel mio archivio questo Script che mi da errore
chi puo' sistemarlo ?

Sub Main()
Dim anum (7)
Dim numeri(2)
Dim anumx (3)
Dim pr,pp,cv,cm
Dim rt,ns
Dim rtx
dstart = 7000
'dend = 6877
dend = EstrazioneFin
For i = dstart To dend
AvanzamentoElab dstart,dend,i
For rt = 1 To 10
For rtx = 1 To 10
ImpostaRuota rtx,False
Next
ImpostaRuota rt,True
For xp = 1 To 5
anum (xp) = Estratto ( i , rt , xp )
Next
ds60 = False
ns = 1
While (( ns <= 4 ) And ( ds60 = False ))

x1 = Estratto ( i , rt,ns )
x2 = Estratto ( i , rt,ns + 1)
If Fuori90( Abs(x1 - x2)) = 60 Then
ds60 = True
numeri(1) = x1
numeri(2) = x2
anum(ns) = 0
anum(ns+1) = 0
End If
ns = ns + 1
Wend
If ds60 Then 'Si può partire con la giocata ....
' anum (6) = numeri(1)
' anum (7) = numeri(2)
' Si azzerano i numeri gi… contenuti nelle "n1" e "n2"
' EliminaRipetuti ( anum )
' Si ordinano i numeri in modo decrescente. Così nelle variabili
' "a1", "a2" e "a3" rimangono i restanti 3 numeri, cioè tutti tranne n1 e n2
OrdinaNumeriDec ( anum )
anumx(1) = anum(1)
anumx(2) = anum(2)
anumx(3) = anum(3)
' I numeri si ordinano in modo crescente
OrdinaNumeri ( anumx )
' ============ SI PREPARANO I NUMERI PER IL GIOCO ============
' Caso 1): il secondo numero è minore o uguale 30
If anumx(2) <= 30 Then
x1 = Fuori90(anumx(1) + 12 )
x2 = Fuori90(anumx(1) + 73 )
y1 = Fuori90(anumx(2) + 12 )
y2 = Fuori90(anumx(2) + 52 )
z1 = Fuori90(anumx(3) + 40 )
z2 = Fuori90(anumx(3) + 37 )
gio i , anumx, x1,x2,y1,y2,z1,z2, rt
ElseIf anumx(2) >= 61 Then ' Caso 2): il secondo numero è maggiore o uguale 61
z1 = Fuori90(anumx(3) + 69 )
z2 = Fuori90(anumx(3) + 48 )
y1 = Fuori90(anumx(2) + 49 )
y2 = Fuori90(anumx(2) + 68 )
x1 = Fuori90(anumx(1) + 78 )
x2 = Fuori90(anumx(1) + 86 )
gio i , anumx, x1,x2,y1,y2,z1,z2, rt
ElseIf anumx(2) <= 45 Then ' Caso 3): il secondo numero è maggiore o uguale 31 e minore o uguale 45
x1 = Fuori90(anumx(1) + 24 )
x2 = Fuori90(anumx(1) + 59 )
y1 = Fuori90(anumx(2) + 21 )
y2 = Fuori90(anumx(2) + 48 )
' al posto del terzo numero si mette la media
' del secondo e del terzo numero, trascurando la parte decimale
anumx(3) = CInt ((anumx(2)+anumx(3))\2)
z1 = Fuori90(anumx(3) + 81)
z2 = Fuori90(anumx(3) + 44)
gio i , anumx , x1,x2,y1,y2,z1,z2, rt
ElseIf anumx(2) >= 46 Then ' Caso 4): il secondo numero è maggiore o uguale 46 e minore o uguale 60
z1 = Fuori90(anumx(3) + 7)
z2 = Fuori90(anumx(3) + 25)
y1 = Fuori90(anumx(2) + 1 )
y2 = Fuori90(anumx(2) + 17 )
' al posto del primo numero si mette la media
' del primo e del secondo numero, trascurando la parte decimale
anumx(1) = CInt ((anumx(1)+anumx(2))\2)
x1 = Fuori90(anumx(1) + 54)
x2 = Fuori90(anumx(1) + 59)
gio i , anumx, x1,x2,y1,y2,z1,z2, rt
End If
End If
Next
Next
ScriviResoconto
End Sub
Function Gio ( i , anumx , x1,x2,y1,y2,z1,z2, rt)
Dim procedi
Dim gnum (10)
Dim giovar1 ( 6 )
Dim giovar2 ( 6 )
Dim poste(5)
Dim grt (1)
Dim nr (1)
Dim ux (5)
Dim durata
Dim sorteint
Dim crs
Dim igcnt
procedi = True
ResettaGiocate
' Nelle variabili "u1", "u2" e "u3" si memorizzano i ritardi di 3 numeri,
' riferiti all'estrazione precedente.
uxs = 0
For crs = 1 To 3
nr(1) = anumx(crs)
ux(crs) = Ritardo ( i-250 , i-1 , nr , 1 )
uxs = uxs + ux(crs)
Next
'Scrivi DataEstrazione(i)
'Scrivi CStr(anumx(1)) & "." & CStr(anumx(2)) & "." & CStr(anumx(3))
'Scrivi CStr(ux(1)) & "." & CStr(ux(2)) & "." & CStr(ux(3))
' I ritardi si ordinano in modo crescente
OrdinaNumeri ux
' Se la somma di tutti e 3 ritardi e minore o uguale a 10, oppure
' maggiore o uguale a 179 non si gioca
If ( uxs<=9 Or uxs>= 179 ) Then
procedi = False
End If
' Se la distanza tra il ritardo massimo "u3" e quello minore "u1"
' è maggiore o uguale a 90 non si gioca
If ux(3)-ux(1)>=90 Then
procedi = False
End If
If procedi Then
grt (1) = rt
durata = 6
sorteint = 1
poste(2) = 2000
minrit = 20
giovar1(1) = anumx(1)
giovar1(2) = anumx(1)
giovar1(3) = anumx(2)
giovar1(4) = anumx(2)
giovar1(5) = anumx(3)
giovar1(6) = anumx(3)
giovar2(1) = x1
giovar2(2) = x2
giovar2(3) = y1
giovar2(4) = y2
giovar2(5) = z1
giovar2(6) = z2
Scrivi DataEstrazione(i)
igcnt = 0
For cnt = 1 To 6
gnum(1) = giovar1(cnt)
gnum(2) = giovar2(cnt)
ritx = Ritardo ( i-20 , i-1, gnum, 2 )
Scrivi CStr(gnum(1)) & "." & CStr(gnum(2)) & " Rit. per ambo = " & CStr(ritx)
If ritx >= 10 Then
igcnt = igcnt + 1
ImpostaGiocata igcnt,gnum,grt,poste,durata,sorteint
End If
Next
Gioca i
End If
End Function
 
Te lo formattato un po senza stare a guardarlo troppo.

Comunque non è uno script nato in spaziometria........

ci vorrebbero diverse modifiche....




Codice:
Sub Main()
    Dim anum(7)
    Dim numeri(2)
    Dim anumx(3)
    Dim pr,pp,cv,cm
    Dim rt,ns
    Dim rtx
    dstart = 7000
    'dend = 6877
    dend = EstrazioneFin
    For i = dstart To dend
        AvanzamentoElab dstart,dend,i
        For rt = 1 To 10
            For rtx = 1 To 10
                ImpostaRuota rtx,False
            Next
            ImpostaRuota rt,True
            For xp = 1 To 5
                anum(xp) = Estratto(i,rt,xp)
            Next
            ds60 = False
            ns = 1
            While((ns <= 4) And(ds60 = False))
            x1 = Estratto(i,rt,ns)
            x2 = Estratto(i,rt,ns + 1)
            If Fuori90(Abs(x1 - x2)) = 60 Then
                ds60 = True
                numeri(1) = x1
                numeri(2) = x2
                anum(ns) = 0
                anum(ns + 1) = 0
            End If
            ns = ns + 1
        Wend
        If ds60 Then 'Si può partire con la giocata ....
            ' anum (6) = numeri(1)
            ' anum (7) = numeri(2)
            ' Si azzerano i numeri gi… contenuti nelle "n1" e "n2"
            ' EliminaRipetuti ( anum )
            ' Si ordinano i numeri in modo decrescente. Così nelle variabili
            ' "a1", "a2" e "a3" rimangono i restanti 3 numeri, cioè tutti tranne n1 e n2
            OrdinaNumeriDec(anum)
            anumx(1) = anum(1)
            anumx(2) = anum(2)
            anumx(3) = anum(3)
            ' I numeri si ordinano in modo crescente
            OrdinaNumeri(anumx)
            ' ============ SI PREPARANO I NUMERI PER IL GIOCO ============
            ' Caso 1): il secondo numero è minore o uguale 30
            If anumx(2) <= 30 Then
                x1 = Fuori90(anumx(1) + 12)
                x2 = Fuori90(anumx(1) + 73)
                y1 = Fuori90(anumx(2) + 12)
                y2 = Fuori90(anumx(2) + 52)
                z1 = Fuori90(anumx(3) + 40)
                z2 = Fuori90(anumx(3) + 37)
                Gio i,anumx,x1,x2,y1,y2,z1,z2,rt
            ElseIf anumx(2) >= 61 Then ' Caso 2): il secondo numero è maggiore o uguale 61
                z1 = Fuori90(anumx(3) + 69)
                z2 = Fuori90(anumx(3) + 48)
                y1 = Fuori90(anumx(2) + 49)
                y2 = Fuori90(anumx(2) + 68)
                x1 = Fuori90(anumx(1) + 78)
                x2 = Fuori90(anumx(1) + 86)
                Gio i,anumx,x1,x2,y1,y2,z1,z2,rt
            ElseIf anumx(2) <= 45 Then ' Caso 3): il secondo numero è maggiore o uguale 31 e minore o uguale 45
                x1 = Fuori90(anumx(1) + 24)
                x2 = Fuori90(anumx(1) + 59)
                y1 = Fuori90(anumx(2) + 21)
                y2 = Fuori90(anumx(2) + 48)
                ' al posto del terzo numero si mette la media
                ' del secondo e del terzo numero, trascurando la parte decimale
                anumx(3) = CInt((anumx(2) + anumx(3))\2)
                z1 = Fuori90(anumx(3) + 81)
                z2 = Fuori90(anumx(3) + 44)
                Gio i,anumx,x1,x2,y1,y2,z1,z2,rt
            ElseIf anumx(2) >= 46 Then ' Caso 4): il secondo numero è maggiore o uguale 46 e minore o uguale 60
                z1 = Fuori90(anumx(3) + 7)
                z2 = Fuori90(anumx(3) + 25)
                y1 = Fuori90(anumx(2) + 1)
                y2 = Fuori90(anumx(2) + 17)
                ' al posto del primo numero si mette la media
                ' del primo e del secondo numero, trascurando la parte decimale
                anumx(1) = CInt((anumx(1) + anumx(2))\2)
                x1 = Fuori90(anumx(1) + 54)
                x2 = Fuori90(anumx(1) + 59)
                Gio i,anumx,x1,x2,y1,y2,z1,z2,rt
            End If
        End If
    Next
Next
ScriviResoconto
End Sub
Function Gio(i,anumx,x1,x2,y1,y2,z1,z2,rt)
    Dim procedi
    Dim gnum(10)
    Dim giovar1(6)
    Dim giovar2(6)
    Dim poste(5)
    Dim grt(1)
    Dim nr(1)
    Dim ux(5)
    Dim durata
    Dim sorteint
    Dim crs
    Dim igcnt
    procedi = True
    ResettaGiocate
    ' Nelle variabili "u1", "u2" e "u3" si memorizzano i ritardi di 3 numeri,
    ' riferiti all'estrazione precedente.
    uxs = 0
    For crs = 1 To 3
        nr(1) = anumx(crs)
        ux(crs) = Ritardo(i - 250,i - 1,nr,1)
        uxs = uxs + ux(crs)
    Next
    'Scrivi DataEstrazione(i)
    'Scrivi CStr(anumx(1)) & "." & CStr(anumx(2)) & "." & CStr(anumx(3))
    'Scrivi CStr(ux(1)) & "." & CStr(ux(2)) & "." & CStr(ux(3))
    ' I ritardi si ordinano in modo crescente
    OrdinaNumeri ux
    ' Se la somma di tutti e 3 ritardi e minore o uguale a 10, oppure
    ' maggiore o uguale a 179 non si gioca
    If(uxs <= 9 Or uxs >= 179) Then
        procedi = False
    End If
    ' Se la distanza tra il ritardo massimo "u3" e quello minore "u1"
    ' è maggiore o uguale a 90 non si gioca
    If ux(3) - ux(1) >= 90 Then
        procedi = False
    End If
    If procedi Then
        grt(1) = rt
        durata = 6
        sorteint = 1
        poste(2) = 2000
        minrit = 20
        giovar1(1) = anumx(1)
        giovar1(2) = anumx(1)
        giovar1(3) = anumx(2)
        giovar1(4) = anumx(2)
        giovar1(5) = anumx(3)
        giovar1(6) = anumx(3)
        giovar2(1) = x1
        giovar2(2) = x2
        giovar2(3) = y1
        giovar2(4) = y2
        giovar2(5) = z1
        giovar2(6) = z2
        Scrivi DataEstrazione(i)
        igcnt = 0
        For cnt = 1 To 6
            gnum(1) = giovar1(cnt)
            gnum(2) = giovar2(cnt)
            ritx = Ritardo(i - 20,i - 1,gnum,2)
            Scrivi CStr(gnum(1)) & "." & CStr(gnum(2)) & " Rit. per ambo = " & CStr(ritx)
            If ritx >= 10 Then
                igcnt = igcnt + 1
                ImpostaGiocata igcnt,gnum,grt,poste,durata,sorteint
            End If
        Next
        Gioca i
    End If
End Function
 
Ultima modifica di un moderatore:

Ultima estrazione Lotto

  • Estrazione del lotto
    sabato 18 ottobre 2025
    Bari
    23
    03
    54
    34
    30
    Cagliari
    49
    14
    25
    09
    37
    Firenze
    32
    45
    15
    59
    29
    Genova
    03
    66
    68
    90
    85
    Milano
    88
    15
    21
    41
    27
    Napoli
    79
    72
    84
    27
    01
    Palermo
    23
    03
    73
    25
    04
    Roma
    11
    67
    24
    13
    59
    Torino
    72
    59
    84
    75
    26
    Venezia
    81
    08
    18
    76
    25
    Nazionale
    58
    69
    62
    17
    70
    Estrazione Simbolotto
    08
    26
    28
    22
    40

Ultimi Messaggi

Indietro
Alto