Novità

regalino

genios

Advanced Member >PLATINUM<
Codice:
Sub Main()
    Dim ruota,pos,es,numero,ultimaEstrazione,estrazioneIniziale,estrazioneFinale
    Dim numeriRicerca(5),posizioni(5)
    Dim i,j,n,posIndex
    Dim conteggioNumeri(90),risultato(9,10)
    Dim valore
    Dim parole(150),colori(150),grassetti(150),indice,valoreReale
    Dim estratti(5),estrattiPrecedenti(5)
    Dim coloreRosso,coloreNero
    Dim coloraRossoPrecedenti(5),coloraRossoCorrenti(5)

    coloreRosso = vbRed
    coloreNero = vbBlack

    ruota = 5
    Scrivi "Ruota:(" & ruota & ")",True
    Scrivi

    ultimaEstrazione = EstrazioneFin()

    ' Intestazione allineata ai valori
    Scrivi "           0000000001 1111111112 2222222223 3333333334 4444444445 5555555556 6666666667 7777777778 8888888889",True
    Scrivi "           1234567890 1234567890 1234567890 1234567890 1234567890 1234567890 1234567890 1234567890 1234567890",True
    Scrivi

    ' Inizializza estratti precedenti a zero
    For i = 1 To 5
        estrattiPrecedenti(i) = 0
    Next

    For k = 29 To 0 Step - 1
        estrazioneIniziale = ultimaEstrazione - k

        ' Recupera i numeri estratti per l'estrazione corrente
        For i = 1 To 5
            numeriRicerca(i) = Estratto(estrazioneIniziale,ruota,i)
        Next

        ' Salva gli estratti da visualizzare alla fine
        For i = 1 To 5
            estratti(i) = numeriRicerca(i)
        Next

        estrazioneFinale = estrazioneIniziale - 2900

        For n = 1 To 90
            conteggioNumeri(n) = 0
        Next

        ' Calcola il conteggio dei numeri nelle estrazioni
        For i = 1 To 5
            Dim contatoreOccorrenze
            contatoreOccorrenze = 0

            For es = estrazioneIniziale To estrazioneFinale Step - 1
                numero = Estratto(es,ruota,i)
                If numero = numeriRicerca(i) Then
                    contatoreOccorrenze = contatoreOccorrenze + 1

                    ' Calcolo per la decina della spia
                    Dim decinaSpia
                    decinaSpia = Int((numeriRicerca(i) - 1) / 10) ' Calcola la decina della spia

                    ' Verifica la posizione della spia
                    Dim posSpia
                    posSpia = i

                    ' Conta tutti i numeri appartenenti alla decina della spia nelle successive 12 estrazioni
                    For j = 1 To 12
                        If(es + j) <= estrazioneIniziale Then
                            For posIndex = 1 To 5
                                numero = Estratto(es + j,ruota,posIndex)
                                If numero > 0 And numero <= 90 Then
                                    ' Verifica se il numero appartiene alla stessa decina della spia
                                    If Int((numero - 1) / 10) = decinaSpia Then
                                        ' Controlla se la posizione è valida per la spia
                                        Dim posVerifica
                                        posVerifica =(posSpia + j - 1) Mod 5 + 1
                                        If posVerifica = posIndex Or posVerifica =((posIndex Mod 5) + 1) Then
                                            conteggioNumeri(numero) = conteggioNumeri(numero) + 1
                                        End If
                                    End If
                                End If
                            Next
                        End If
                    Next
                End If

                If contatoreOccorrenze >= 12 Then Exit For
            Next
        Next

        For i = 0 To 8
            For j = 1 To 10
                risultato(i,j) = conteggioNumeri(i * 10 + j)
            Next
        Next

        indice = 0
        parole(0) = DataEstrazione(estrazioneIniziale) & " " ' Aggiungi la data con uno spazio all'inizio
        colori(0) = coloreNero
        grassetti(0) = True
        indice = 1 ' Partiamo dall'indice 1 per i valori

        ' Ciclo per la creazione delle parole formattate e colorate
        For i = 0 To 8 ' Gruppi di 10 numeri
            For j = 1 To 10 ' Colonne
                valore = risultato(i,j)
                valoreReale = i * 10 + j ' Questo è il valore numerico che stiamo considerando (es. 1-90)

                If valore >= 10 Then
                    valore = Chr(65 +(valore - 10)) ' Converte valori >= 10 in A, B, etc.
                ElseIf valore = 0 Then
                    valore = "*" ' Sostituisce lo zero con un asterisco
                End If

                ' Gestione della colorazione tenendo conto degli spazi e dei valori alfanumerici
                If IsInArray(valoreReale,numeriRicerca) Then
                    colori(indice) = coloreRosso
                Else
                    colori(indice) = coloreNero
                End If

                ' Assicurati che valore sia corretto per la visualizzazione
                If IsNumeric(valore) Or valore = "*" Then
                    parole(indice) = FormatSpace(valore,0,False) ' Usa FormatSpace anche per *
                Else
                    parole(indice) = valore ' Aggiungi il valore letterale (A, B, C, ...)
                End If

                grassetti(indice) = True
                indice = indice + 1
            Next

            ' Aggiungi uno spazio ogni 10 numeri, ma senza spazio tra le presenze
            parole(indice) = " " ' Aggiungi lo spazio tra le decine
            colori(indice) = coloreNero
            grassetti(indice) = True
            indice = indice + 1
        Next

        ' Determina quali estratti colorare di rosso per l'estrazione corrente e precedente
        If k < 29 Then ' Solo se non è la prima iterazione
            For i = 1 To 5
                ' Verifica se la decina è la stessa nella stessa posizione estrazionale
                If Int((estratti(i) - 1) / 10) = Int((estrattiPrecedenti(i) - 1) / 10) Then
                    coloraRossoCorrenti(i) = True
                    coloraRossoPrecedenti(i) = True
                Else
                    coloraRossoCorrenti(i) = False
                    coloraRossoPrecedenti(i) = False
                End If
            Next
        End If

        ' Aggiungi gli estratti dell'estrazione corrente alla fine della riga con Format2 e separati da un punto
        For i = 1 To 5
            ' Colorazione per gli estratti dell'estrazione corrente
            If coloraRossoCorrenti(i) Then
                colori(indice) = coloreRosso
            Else
                colori(indice) = coloreNero
            End If

            parole(indice) = Format2(estratti(i)) & "."
            grassetti(indice) = True
            indice = indice + 1
        Next

        ' Memorizza i numeri correnti per la verifica nelle estrazioni successive
        For i = 1 To 5
            estrattiPrecedenti(i) = estratti(i)
        Next

        ' Stampa la riga con la data dell'estrazione, i valori colorati e gli estratti alla fine
        ScriviConColori parole,colori,grassetti
    Next
End Sub

Function IsInArray(valore,arr)
    Dim i
    IsInArray = False
    For i = LBound(arr) To UBound(arr)
        If arr(i) = valore Then
            IsInArray = True
            Exit Function
        End If
    Next
End Function
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 05 novembre 2024
    Bari
    55
    75
    69
    01
    79
    Cagliari
    79
    35
    78
    07
    33
    Firenze
    06
    27
    51
    59
    21
    Genova
    76
    46
    30
    04
    73
    Milano
    87
    58
    63
    54
    71
    Napoli
    51
    76
    23
    63
    30
    Palermo
    45
    67
    33
    70
    11
    Roma
    40
    02
    54
    24
    22
    Torino
    57
    79
    38
    35
    16
    Venezia
    36
    33
    14
    82
    07
    Nazionale
    79
    35
    04
    57
    51
    Estrazione Simbolotto
    Torino
    42
    13
    26
    27
    33

Ultimi Messaggi

Indietro
Alto