Option Explicit
Sub Main
Dim es, r, p, n
Dim riga, contatoreRipetuti
Dim ini, fin
Dim freq(12, 90)
' Definizione del range: ultime 18 estrazioni disponibili
fin = EstrazioneFin
ini = (fin - 18) + 1
' Inizializzazione dell'array delle frequenze a 0
For r = 1 To 12
For n = 1 To 90
freq(r, n) = 0
Next
Next
' Ciclo di lettura dei dati
For es = ini To fin
For r = 1 To 12
If r <> 11 Then ' Salta la ruota Nazionale temporaneamente dal ciclo standard se necessario, o gestiscila
For p = 1 To 5
n = Estratto(es, r, p)
If n > 0 Then
freq(r, n) = freq(r, n) + 1
End If
Next
End If
Next
Next
' --- STAMPA DEI RISULTATI ---
Call Scrivi("ANALISI NUMERI RIPETUTI NELLE ULTIME 18 ESTRAZIONI", True, , 1, 5, 3)
Call Scrivi("Intervallo analizzato: da estr. " & ini & " a estr. " & fin & " (Totale: 18 estrazioni)", , , , 2, 2)
Call Scrivi("")
For r = 1 To 12
If r <> 11 Then
Call Scrivi("--- RUOTA DI " & NomeRuota(r) & " ---", True, , 2, 4, 3)
Call Scrivi("Num. | Presenze/Frequenza", True)
Call Scrivi("-------------------------")
contatoreRipetuti = 0
' Mostra solo i numeri con frequenza maggiore o uguale a 2 (ripetuti)
For n = 1 To 90
If freq(r, n) >= 2 Then
riga = "Numero " & Format2

& " --> Uscito " & freq(r, n) & " volte"
Call Scrivi(riga)
contatoreRipetuti = contatoreRipetuti + 1
End If
Next
If contatoreRipetuti = 0 Then
Call Scrivi("Nessun numero ripetuto in questa ruota nelle ultime 18 estrazioni.")
End If
Call Scrivi("") ' Spazio tra le ruote
End If
Next
End Sub