Novità

perche non funziona ?

genios

Advanced Member >PLATINUM<
Sub Main()
Scrivi " NUMERI CHE SI PRESENTANO ENTRO 9 ESTRAZIONI DALL' USCITA DELLA SPIA"
Dim nu(1)
Dim ru(1)
Dim prnu(90,2)
Dim rig1(90)
Dim rig2(90)
fin = EstrazioneFin
r = InputBox("SU' CHE RUOTA FACCIO LA RICERCA",,10)
ColoreTesto 2
Scrivi "Ricerca sulla ruota di " & NomeRuota(r) & " relativa alle " & _
"ultime 18 sortite della spia e alle 15 "
Scrivi "maggiori presenze in un periodo di 9 estr. successive" & _
" alla spiata" & String(18," ") & "Robyca"
ColoreTesto 0
Scrivi String(89,"*")
Scrivi
ru(1) = r
For spia = 1 To 90
Messaggio "NUMERO SPIA " & spia
For x = 0 To 2000
es =(fin - x) - 9
If Posizione(es,r,spia) > 0 Then
cs = cs + 1
For y = 1 To 90
nu(1) = y
If SerieFreq(es + 1,es + 9,nu,ru,1) > 0 Then
prnu(y,1) = y
prnu(y,2) = prnu(y,2) + 1
End If
Next
If cs = 18 Then
cs1 = x
Exit For
End If
End If
Next
OrdinaMatrice prnu,1,2
For j = 1 To 90
rig1(spia) = rig1(spia) + FormatSpace(prnu(j,1),3,True)
rig2(spia) = rig2(spia) + FormatSpace(prnu(j,2),3,True)
Next
ColoreTesto 2
Scrivi NomeRuota(r) & " N. spia: " & spia & " sortito " & _
cs & " volte in " & cs1 & " estr."
ColoreTesto 0
Scrivi rig1(spia)
ColoreTesto 1
Scrivi rig2(spia)
Scrivi
cs = 0
Erase prnu
Next
End Sub
 
Con Erase prnu questa matrice viene cancellata alla fine del primo ciclo" for spia" per cui quando ritorna ad esserne richiesto l'utilizzo in prnu(y,1) = y ti da errore ... è normale.
Adesso lascio a te trovare la soluzione dell' errore.

deve darti questo output
1722496747868.png
 
Codice:
Sub Main()
    ' NUMERI CHE SI PRESENTANO ENTRO 9 ESTRAZIONI DALL' USCITA DELLA SPIA
    Dim nu(1)
    Dim ru(1)
    Dim prnu(90, 2)
    Dim rig1(90)
    Dim rig2(90)
    Dim fin
    Dim r
    Dim cs
    Dim cs1
    Dim es
    Dim x
    Dim y
    Dim spia

    fin = EstrazioneFin
    r = InputBox("SU' CHE RUOTA FACCIO LA RICERCA", "", 10)
    ColoreTesto 2
    Scrivi "Ricerca sulla ruota di " & NomeRuota(r) & " relativa alle " & _
           "ultime 18 sortite della spia e alle 15 " & _
           "maggiori presenze in un periodo di 9 estr. successive" & _
           " alla spiata" & String(18, " ") & "Robyca"
    ColoreTesto 0
    Scrivi String(89, "*")
    Scrivi

    ru(1) = r
    For spia = 1 To 90
        Messaggio "NUMERO SPIA " & spia
        cs = 0
        For x = 0 To 2000
            es = (fin - x) - 9
            If Posizione(es, r, spia) > 0 Then
                cs = cs + 1
                For y = 1 To 90
                    nu(1) = y
                    If SerieFreq(es + 1, es + 9, nu, ru, 1) > 0 Then
                        prnu(y, 1) = y
                        prnu(y, 2) = prnu(y, 2) + 1
                    End If
                Next
                If cs = 18 Then
                    cs1 = x
                    Exit For
                End If
            End If
        Next
        OrdinaMatrice prnu, 1, 2
        For j = 1 To 90
            rig1(spia) = rig1(spia) + FormatSpace(prnu(j, 1), 3, True)
            rig2(spia) = rig2(spia) + FormatSpace(prnu(j, 2), 3, True)
        Next
        ColoreTesto 2
        Scrivi NomeRuota(r) & " N. spia: " & spia & " sortito " & _
               cs & " volte in " & cs1 & " estr."
        ColoreTesto 0
        Scrivi rig1(spia)
        ColoreTesto 1
        Scrivi rig2(spia)
        Scrivi
        cs = 0
        ' Correzione: utilizza ReDim per resettare la matrice
        ReDim prnu(90, 2)
    Next
Manca End Sub alla fine
 
Scusate lo ha scritto Claudio più chiaro di così

Con Erase prnu questa matrice viene cancellata alla fine del primo ciclo" for spia"
 
Partito in vacanza?

Bei tempi, quelli passati, prima che ci fosse

il neoeletto "migliore" suggeritore di esercizi di ordinaria scopiazzatura.

Quelli, dai quali cui si evince, senza estrapolazioni, chi, ReDim lo sapeva usare da molto prima del 2013 !


:) Ebbbravo, il solito, Claudio !

P.S. Quasi-quasi ... ci metterei un LIKE.

--------------------------------

Father:

ReDim non può essere scritto dopo Dim

E neanche utilizzarlo... prima ... averlo dichiarato.

In sintesi:

Si deve cancellare Dim prnu (90, 2) presente alle prime righe dello script.

e poi inserire ReDim prnu (90,2)

all'inizio del ciclo ... prima ... che a prnu vengano assegnati i 2 valori per ognuno dei 90 numeri.

In ultimo si deve anche togliere Erase prnu che diversamente CANCELLA il DIMENSIONAMENTO che si era fatto.

:)
 
Ultima modifica:
Solo in questo forum ho visto scrivere script da ZERO bastava chiedere e la pappa arriva subito bella cotta , come al ristorante con una piccola differenza che al ristorante all'uscita pagavi il conto a volte anche salato
 
non sono uno scripter ma neanche de striscio ,ci ho giochicchiato un po con L'IA ..
Screenshot-7.png
 

Ultima estrazione Lotto

  • Estrazione del lotto
    sabato 08 marzo 2025
    Bari
    60
    39
    23
    28
    17
    Cagliari
    02
    69
    40
    50
    65
    Firenze
    29
    64
    30
    71
    31
    Genova
    72
    02
    77
    73
    15
    Milano
    61
    29
    21
    08
    36
    Napoli
    60
    36
    53
    05
    66
    Palermo
    74
    58
    68
    15
    20
    Roma
    87
    10
    08
    52
    84
    Torino
    46
    08
    62
    59
    77
    Venezia
    24
    78
    65
    70
    21
    Nazionale
    28
    82
    76
    30
    14
    Estrazione Simbolotto
    Firenze
    20
    13
    37
    24
    08
Indietro
Alto