Novità

indice non incluso nell' intervallo prnu

genios

Advanced Member >PLATINUM<
chi riesce a correggere l' Errore : indice non incluso nell' intervallo prnu

Codice:
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)
   Dim fin,r,y,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 "
   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
 
Codice:
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)
     Dim fin,r,y,spia,es,cs,cs1
     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
     ReDim prnu(90,2)
          cs= 0
          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
          Erase prnu
     Next
End Sub
 
Riuscite a correggere l' errore . Ciao Euigenio

errore1.jpg
Codice:
Sub Main()
'0903_22a Rosanna x Genios matrici 5 storici

'Analizzare tutti i 3060 gruppi di 4 cinquine di num consecutivi
'Ricercare i max rit storici su ciascuna ruota
'Visualizzare i ritardi dei gruppi più 'attualmente' più in ritardo x ciascuna ruota,
' (con il dettaglio del gruppo e il suo max storico registrato a ruota)

ini = 3950 'inizio calcolo ritardi
fin = EstrazioneFin' fine calcolo dei ritardi e dei max storici

If fin < 7440 Then ruote = 10 Else ruote = 11

Dim Base(5,86) ' contiene le 86 cinquine di numeri consecutivi
Dim baserit(12,18) ' contiene i ritardi delle 18 cinquine per ciascuna ruota
Dim penta(5) ' vettore per il calcolo del rit di ciascuna CINQUINA_
Dim temp(18,2) ' vettore in cui memorizzo ritardo e colonna di ogni CINQUINA di ogni ruota per max temporaneo
Dim temp1(4) ' serve a comporre i gruppi di 4 cinquine consecutive
Dim temp2(4) ' serve a caricare i rit parziali (di ogni ciqnuina) per rilevare il rit minimo del gruppo
Dim num(5,4) ' contiene una singola matrice - serve a calcolare ritardi e storici
Dim gruppi(3060,5,4) ' contiene tutti i gruppi di 4 cinquine di numeri consecutivi
Dim ru(1) ' ruota di riferimento per i ritardi e storici
Dim max(12,2) ' vettore con i massimi ritardi : RitAttuali indici gruppi
Dim sto(12,5) ' vettore degli storici: Sto - 4 Colonne delle cinquine del gruppo col max sto

Messaggio "Elaborazione in corso - Attendere "
'----------------------preparo la matrice base con le 18 cinquine consecutive
For i = 1 To 86 Step 5
   c = c + 1 : Base(1,c) = i
   For y = 2 To 5 : Base(y,c) = Base(y - 1,c) + 1 : Next   
Next
   ColoreTesto 2:
   Scrivi Space(4) & "BASE DATI ",1
   ScriviMatrice Base : ColoreTesto 0' per vedere le cinquine
'--------------------- Calcolo dei max storici
For es = ini + 1 To fin
   'Messaggio es ' <== per vedere l'esecuzione del listato ma rallenta l'esecuzione!   
   For i = 1 To 18 ' in questo blocco calcola/memorizza il rit di ogni cinquina
      For y = 1 To 5 : penta(Y) = Base(y,i) : Next   
      For r = 1 To ruote :If r = 11 Then r = 12
         ru(1) = r
         baserit(r,i) = SerieRitardo(ini,es,penta,ru,2)     
      Next
   Next
   'ColoreTesto 1 : ScriviMatrice baserit : ColoreTesto 0 ' verifica

   For r = 1 To ruote :If r = 11 Then r = 12
      For i = 1 To 18
         temp(i,1) = baserit(r,i) ' carico il ritardo della cinquina
         temp(i,2) = i ' carico la colonna - riferimento della cinquina     
      Next
      OrdinaMatrice temp,- 1,1
      If temp(4,1) > sto(r,1) Then
         sto(r,1) = temp(4,1) ' il 4° valore in classifica è il minimo dei massimi Rit cioè il rit del gruppo
         'For i= 1 To 4
         '   sto(r,i+1)=temp(i,2) 'memorizzo le colonne delle cinquine (casomai dovessi dire qual'è il gruppo)
         'Next
      End If
   Next
Next
'NB: al termine del precedente blocco di istruzioni, su baserit restano i ritardi a "fin"
'------------------------- procedura per la creazione di tutti i gruppi e il rit attuale
For a1 = 1 To 15
   For a2 = a1 + 1 To 16
      For a3 = a2 + 1 To 17
         For a4 = a3 + 1 To 18
            co = co + 1
            temp1(1) = a1 : temp1(2) = a2 : temp1(3) = a3 : temp1(4) = a4 'gestisco lo sviluppo dei gruppi
            '------------------------------------
            For y = 1 To 5 'righe
               For i = 1 To 4 ' colonne               
                  gruppi(co,y,i) = Base(y,temp1(i)) 'memorizzo i dati sulla maxi-matrice gruppi
               Next           
            Next
            '-----------------------------------
            For r = 1 To ruote :If r = 11 Then r = 12
               ru(1) = r
               For i = 1 To 4 : temp2(i) = baserit(r,temp1(i)) : Next
               k1 = MinimoV(temp2)   ' il valore minimo tra i 4 ritardi è il rit del gruppo         
               If k1 = max(r,1) Then max(r,2) = max(r,2) & "." & co ' in caso di pari ritardo memorizzo il gruppo
               If k1 > max(r,1) Then max(r,1) = k1: max(r,2) = co ' aggiorno il max e memor il gruppo               
            Next                 
         Next
      Next
   Next
Next
'----------------------Output finale

Scrivi " RIEPILOGO DEI GRUPPI DI 4 CINQUINE DI NUMERI CONSECUTIVI CON MAGGIOR RITARDO ALL'ES " & FIN,1
Scrivi " (StoGen = max sto raggiunto da un qualsiasi gruppo dei 3060 disponibili)"
Scrivi " (RitAtt = Ritardo del/i gruppo/i  attualmente più in ritardo Tra i 3060 disponibili)"
Scrivi " (Id_gruppo/i = Codice identificativo dei gruppi attualmente più in ritardo)" & Chr(10)

Scrivi " Ru - StoGen - R.Att - Id_gruppo/i ",1

For r = 1 To ruote : If r = 11 Then r = 12
   ColoreTesto 1
   Scrivi " " & SiglaRuota(r) & Space(2) & FormatSpace(sto(r,1),4,1) & Space(6) & max(r,1) & Space(7) & max(r,2)
   ColoreTesto 0
Next
Scrivi : Scrivi "Segue dettaglio dei gruppi più in ritardo (nb: leggere le cinquine in colonna)" & Chr(10),1
For r = 1 To ruote: If r = 11 Then r = 12
   ru(1) = r
   a = "0." & max(r,2)
   aa = Split(a,".")   
   For g = 1 To UBound(aa) ' scorro il vettore che contiene gli indici splittati
      x = aa(g) ' memorizzo l'indice e tramite questo pesco il gruppo di 4 cinquine col max rit attuale

      For y = 1 To 5 ' righe
         For i = 1 To 4 ' colonne           
            num(y,i) = gruppi(x,y,i)
         Next
      Next
      k2 = SerieStorico(ini,fin,num,ru,2) ' calcolo lo storico del gruppo su quella ruota
      Scrivi SiglaRuota(r) & " Gruppo " & x & " (il suo max sto su " & SiglaRuota(r) & " => " & k2 & ")",1
      Scrivi Space(10) & ScriviMatrice(num)
      Scrivi String(67,"-")
   Next   
Next
End Sub
 

Allegati

  • errore1.jpg
    errore1.jpg
    7,9 KB · Visite: 7
 

Ultima estrazione Lotto

  • Estrazione del lotto
    sabato 05 luglio 2025
    Bari
    25
    89
    22
    77
    56
    Cagliari
    05
    87
    46
    70
    49
    Firenze
    17
    85
    66
    59
    54
    Genova
    90
    65
    07
    44
    62
    Milano
    60
    84
    26
    78
    43
    Napoli
    71
    78
    86
    76
    84
    Palermo
    23
    42
    82
    60
    88
    Roma
    86
    60
    85
    19
    01
    Torino
    59
    30
    54
    29
    60
    Venezia
    90
    20
    71
    03
    81
    Nazionale
    70
    36
    74
    27
    38
    Estrazione Simbolotto
    Nazionale
    02
    32
    40
    16
    19
Indietro
Alto