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
 

claudio8

Premium Member
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
 

Baciccia4251

Senior Member
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
 

Delphi

Advanced Member
Scusate lo ha scritto Claudio più chiaro di così

Con Erase prnu questa matrice viene cancellata alla fine del primo ciclo" for spia"
 

joe

Advanced Member >PLATINUM PLUS<
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:

Delphi

Advanced Member
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
 

Father

Super Member >PLATINUM<
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 03 agosto 2024
    Bari
    70
    56
    80
    58
    83
    Cagliari
    69
    73
    43
    70
    33
    Firenze
    15
    38
    41
    37
    27
    Genova
    18
    16
    52
    55
    48
    Milano
    43
    16
    37
    66
    28
    Napoli
    15
    70
    46
    56
    61
    Palermo
    42
    07
    37
    30
    82
    Roma
    47
    19
    35
    05
    16
    Torino
    09
    35
    32
    81
    79
    Venezia
    59
    54
    34
    13
    43
    Nazionale
    62
    50
    27
    38
    87
    Estrazione Simbolotto
    Nazionale
    35
    18
    45
    04
    25

Ultimi Messaggi

Alto