Novità

Chi riesce a fare lo script da un vecchio metodo?

Rossella35

Junior Member
salve, ho trovato un vecchio metodo, qualcuno riesce a fare questo script per spaziometria?

si controllano le ultime tre estrazioni e si deve trovare su due ruote, due coppie di numeri ( 2 ambi ) appartenenti alla stessa cinquina pentagonale (vedi lista sotto), il quinto non ancora sortito sara' il capogioco della nostra previsione.

esempio pratico:

estraz.del 28/5/11 su roma abbiamo avuto la coppia 86-50
estraz.del 31/5/11 su nazionale la coppia 32-68

l'elemento mancante era il 14

quindi ambata 14

1mo abbinamento il doppio dell'ambata quindi 28

2ndo il suo diametrale 73

prev.in gioco 14-28/14-73/14-28-73

in data 14 giungo sortito ambo secco 14-28 sulla nazionale


p.s.

vi ho detto di controllare solo le ultime 3 estrazioni perche' se lo fate su un numero piu' grosso non ci capite piu' niente ,ne usciranno a decine ,ciaoooo a tutti e buon divertimento



conservate questa tabella,sono le 18 cinquine pentagonali distanza 18 e della stessa figura...
1 19 37 55 73
2 20 38 56 74
3 21 39 57 75
4 22 40 58 76
5 23 41 59 77
6 24 42 60 78
7 25 43 61 79
8 26 44 62 80
9 27 45 63 81
10 28 46 64 82
11 29 47 65 83
12 30 48 66 84
13 31 49 67 85
14 32 50 68 86
15 33 51 69 87
16 34 52 70 88
17 35 53 71 89
18 36 54 72 90

grazie a chi mi aiuta
 
Ciao Rossella,

questo mioscript è orientato ed in grado di effettuare sia la ricerca

che di riprodurre, quanto da te esposto.

Tuttavia i casi sono molti e giocare tutto diventa forse troppo.

Dunque lo propongo così come è per la grande parte della ricerca

che è complicata e noiosa da farsi "ad occhio" sperando di fare cosa gradita.

Codice:
Option Explicit
Sub Main
'x Rossella35 Ricerca Ambo Pentaginale in CS Script v.0.0 By Joe
   Dim Ini,Fin,Es,R,S,E
   Dim P,Q,D
 
   Fin = 8384 'EstrazioneFin
   Ini = Fin - 2
 
   For Es = Ini To Fin
      For R = 1 To 12 : If R = 11 Then R = 12
         S = StringaEstratti(Es,R)
         E = Split("0." & S,".")
         OrdinaMatrice E,1
         For P = 1 To 4
            For Q = P + 1 To 5
               D = E(Q) - E(P)
               If D Mod 18 = 0 Then
                  Scrivi DataEstrazione(Es,,,"/") & " " & SiglaRuota(R) & " " & Format2(E(P)) & "." & Format2(E(Q)) & " ",0,0
                  Scrivi Format2(C(E(P))),1,,,2
               End If
            Next
         Next
      Next
   Next
End Sub
Function C(X)
   Do While X >= 18
      X = X - 18
   Loop
   C = X
End Function

:)
 
Ciao Rossella,

questo mioscript è orientato ed in grado di effettuare sia la ricerca

che di riprodurre, quanto da te esposto.

Tuttavia i casi sono molti e giocare tutto diventa forse troppo.

Dunque lo propongo così come è per la grande parte della ricerca

che è complicata e noiosa da farsi "ad occhio" sperando di fare cosa gradita.

Codice:
Option Explicit
Sub Main
'x Rossella35 Ricerca Ambo Pentaginale in CS Script v.0.0 By Joe
   Dim Ini,Fin,Es,R,S,E
   Dim P,Q,D
 
   Fin = 8384 'EstrazioneFin
   Ini = Fin - 2
 
   For Es = Ini To Fin
      For R = 1 To 12 : If R = 11 Then R = 12
         S = StringaEstratti(Es,R)
         E = Split("0." & S,".")
         OrdinaMatrice E,1
         For P = 1 To 4
            For Q = P + 1 To 5
               D = E(Q) - E(P)
               If D Mod 18 = 0 Then
                  Scrivi DataEstrazione(Es,,,"/") & " " & SiglaRuota(R) & " " & Format2(E(P)) & "." & Format2(E(Q)) & " ",0,0
                  Scrivi Format2(C(E(P))),1,,,2
               End If
            Next
         Next
      Next
   Next
End Sub
Function C(X)
   Do While X >= 18
      X = X - 18
   Loop
   C = X
End Function

:)
grazie , ma questo script evidenzia solo dove si trovano i numeri, non fa i calcoli e neppure mette i numeri da giocare....
 
grazie , ma questo script evidenzia solo dove si trovano i numeri, non fa i calcoli e neppure mette i numeri da giocare....

Si è vero.

Formare la giocata è semplice.

Ma limitare i casi in modo da non avere

troppe giocate. ( Ovvero come scrivi tu, da non capirci più nulla)

richiede regole precise.

Lo script le applicherà con rigidità appena saranno codificate.

:)
 
Option Explicit

Const SOLO_AMBI_ESATTI = True
Const RUOTE_DIVERSE = True

Sub Main

Dim aRuote
Dim aCin
Dim aTitoli
Dim aRiga

Dim Fine
Dim Inizio
Dim es
Dim iRuota
Dim Ruota
Dim idCin
Dim p
Dim num

Dim cnt
Dim n1
Dim n2
Dim nMin
Dim nMax

Dim h
Dim h1
Dim h2
Dim idRiga

Dim capogioco
Dim abb1
Dim abb2

Dim aHData()
Dim aHRuota()
Dim aHCin()
Dim aHN1()
Dim aHN2()

Dim trovato

Call CaricaRuote(aRuote)
Call CaricaCinquine(aCin)

Fine = EstrazioneFin
Inizio = Fine - 2

If Inizio < EstrazioneIni Then
Inizio = EstrazioneIni
End If

ReDim aHData(1000)
ReDim aHRuota(1000)
ReDim aHCin(1000)
ReDim aHN1(1000)
ReDim aHN2(1000)

h = 0

For es = Inizio To Fine

For iRuota = 1 To UBound(aRuote)

Ruota = aRuote(iRuota)

For idCin = 1 To 18

cnt = 0
n1 = 0
n2 = 0

For p = 1 To 5

num = Estratto(es, Ruota, p)

If NumeroInCinquina(num, aCin, idCin) Then

cnt = cnt + 1

If cnt = 1 Then
n1 = num
ElseIf cnt = 2 Then
n2 = num
End If

End If

Next

If SOLO_AMBI_ESATTI Then

If cnt = 2 Then

Call OrdinaCoppia(n1, n2, nMin, nMax)

h = h + 1
aHData(h) = es
aHRuota(h) = Ruota
aHCin(h) = idCin
aHN1(h) = nMin
aHN2(h) = nMax

End If

End If

Next

Next

Next

ReDim aTitoli(14)

aTitoli(1) = "Cinquina"
aTitoli(2) = "Data 1"
aTitoli(3) = "Ruota 1"
aTitoli(4) = "Coppia 1"
aTitoli(5) = "Data 2"
aTitoli(6) = "Ruota 2"
aTitoli(7) = "Coppia 2"
aTitoli(8) = "Capogioco"
aTitoli(9) = "Doppio"
aTitoli(10) = "Diametrale"
aTitoli(11) = "Ambo 1"
aTitoli(12) = "Ambo 2"
aTitoli(13) = "Terno"
aTitoli(14) = "Ruote"

Call InitTabella(aTitoli, vbCyan)

Scrivi "Metodo cinquine pentagonali - controllo ultime 3 estrazioni", 1
Scrivi "Range controllato: " & GetInfoEstrazione(Inizio) & " -> " & GetInfoEstrazione(Fine), 1
Scrivi

idRiga = 0
trovato = False

For h1 = 1 To h - 1

For h2 = h1 + 1 To h

If aHCin(h1) = aHCin(h2) Then

If RUOTE_DIVERSE = False Or aHRuota(h1) <> aHRuota(h2) Then

If QuattroDiversi(aHN1(h1), aHN2(h1), aHN1(h2), aHN2(h2)) Then

capogioco = NumeroMancante(aCin, aHCin(h1), aHN1(h1), aHN2(h1), aHN1(h2), aHN2(h2))

If capogioco > 0 Then

abb1 = Doppio90(capogioco)
abb2 = Diametrale(abb1)

idRiga = idRiga + 1
trovato = True

ReDim aRiga(14)

aRiga(1) = StringaCinquina(aCin, aHCin(h1))
aRiga(2) = GetInfoEstrazione(aHData(h1))
aRiga(3) = SiglaRuota(aHRuota(h1))
aRiga(4) = FormatNum(aHN1(h1)) & "-" & FormatNum(aHN2(h1))
aRiga(5) = GetInfoEstrazione(aHData(h2))
aRiga(6) = SiglaRuota(aHRuota(h2))
aRiga(7) = FormatNum(aHN1(h2)) & "-" & FormatNum(aHN2(h2))
aRiga(8) = FormatNum(capogioco)
aRiga(9) = FormatNum(abb1)
aRiga(10) = FormatNum(abb2)
aRiga(11) = FormatNum(capogioco) & "-" & FormatNum(abb1)
aRiga(12) = FormatNum(capogioco) & "-" & FormatNum(abb2)
aRiga(13) = FormatNum(capogioco) & "-" & FormatNum(abb1) & "-" & FormatNum(abb2)
aRiga(14) = SiglaRuota(aHRuota(h1)) & "-" & SiglaRuota(aHRuota(h2))

Call AddRigaTabella(aRiga, , "center")

End If

End If

End If

End If

Next

Next

If trovato Then
Call CreaTabella
Else
Scrivi "Nessun segnale trovato con i parametri attuali.", 1
End If

End Sub


Sub CaricaRuote(ByRef aRuote)

ReDim aRuote(11)

aRuote(1) = BA_
aRuote(2) = CA_
aRuote(3) = FI_
aRuote(4) = GE_
aRuote(5) = MI_
aRuote(6) = NA_
aRuote(7) = PA_
aRuote(8) = RO_
aRuote(9) = TO_
aRuote(10) = VE_
aRuote(11) = NZ_

End Sub


Sub CaricaCinquine(ByRef aCin)

ReDim aCin(18, 5)

aCin(1, 1) = 1 : aCin(1, 2) = 19 : aCin(1, 3) = 37 : aCin(1, 4) = 55 : aCin(1, 5) = 73
aCin(2, 1) = 2 : aCin(2, 2) = 20 : aCin(2, 3) = 38 : aCin(2, 4) = 56 : aCin(2, 5) = 74
aCin(3, 1) = 3 : aCin(3, 2) = 21 : aCin(3, 3) = 39 : aCin(3, 4) = 57 : aCin(3, 5) = 75
aCin(4, 1) = 4 : aCin(4, 2) = 22 : aCin(4, 3) = 40 : aCin(4, 4) = 58 : aCin(4, 5) = 76
aCin(5, 1) = 5 : aCin(5, 2) = 23 : aCin(5, 3) = 41 : aCin(5, 4) = 59 : aCin(5, 5) = 77
aCin(6, 1) = 6 : aCin(6, 2) = 24 : aCin(6, 3) = 42 : aCin(6, 4) = 60 : aCin(6, 5) = 78
aCin(7, 1) = 7 : aCin(7, 2) = 25 : aCin(7, 3) = 43 : aCin(7, 4) = 61 : aCin(7, 5) = 79
aCin(8, 1) = 8 : aCin(8, 2) = 26 : aCin(8, 3) = 44 : aCin(8, 4) = 62 : aCin(8, 5) = 80
aCin(9, 1) = 9 : aCin(9, 2) = 27 : aCin(9, 3) = 45 : aCin(9, 4) = 63 : aCin(9, 5) = 81
aCin(10, 1) = 10 : aCin(10, 2) = 28 : aCin(10, 3) = 46 : aCin(10, 4) = 64 : aCin(10, 5) = 82
aCin(11, 1) = 11 : aCin(11, 2) = 29 : aCin(11, 3) = 47 : aCin(11, 4) = 65 : aCin(11, 5) = 83
aCin(12, 1) = 12 : aCin(12, 2) = 30 : aCin(12, 3) = 48 : aCin(12, 4) = 66 : aCin(12, 5) = 84
aCin(13, 1) = 13 : aCin(13, 2) = 31 : aCin(13, 3) = 49 : aCin(13, 4) = 67 : aCin(13, 5) = 85
aCin(14, 1) = 14 : aCin(14, 2) = 32 : aCin(14, 3) = 50 : aCin(14, 4) = 68 : aCin(14, 5) = 86
aCin(15, 1) = 15 : aCin(15, 2) = 33 : aCin(15, 3) = 51 : aCin(15, 4) = 69 : aCin(15, 5) = 87
aCin(16, 1) = 16 : aCin(16, 2) = 34 : aCin(16, 3) = 52 : aCin(16, 4) = 70 : aCin(16, 5) = 88
aCin(17, 1) = 17 : aCin(17, 2) = 35 : aCin(17, 3) = 53 : aCin(17, 4) = 71 : aCin(17, 5) = 89
aCin(18, 1) = 18 : aCin(18, 2) = 36 : aCin(18, 3) = 54 : aCin(18, 4) = 72 : aCin(18, 5) = 90

End Sub


Function NumeroInCinquina(num, aCin, idCin)

Dim i

NumeroInCinquina = False

For i = 1 To 5
If num = aCin(idCin, i) Then
NumeroInCinquina = True
Exit Function
End If
Next

End Function


Function QuattroDiversi(a, b, c, d)

QuattroDiversi = False

If a = b Then Exit Function
If a = c Then Exit Function
If a = d Then Exit Function
If b = c Then Exit Function
If b = d Then Exit Function
If c = d Then Exit Function

QuattroDiversi = True

End Function


Function NumeroMancante(aCin, idCin, n1, n2, n3, n4)

Dim i
Dim Val

NumeroMancante = 0

For i = 1 To 5

Val = aCin(idCin, i)

If Val <> n1 And Val <> n2 And Val <> n3 And Val <> n4 Then
NumeroMancante = Val
Exit Function
End If

Next

End Function


Sub OrdinaCoppia(n1, n2, ByRef nMin, ByRef nMax)

If n1 <= n2 Then
nMin = n1
nMax = n2
Else
nMin = n2
nMax = n1
End If

End Sub


Function Doppio90(Val)

Doppio90 = ((Val * 2 - 1) Mod 90) + 1

End Function


Function Diametrale(Val)

If Val <= 45 Then
Diametrale = Val + 45
Else
Diametrale = Val - 45
End If

End Function


Function FormatNum(Val)

FormatNum = Format2(Val)

End Function


Function StringaCinquina(aCin, idCin)

StringaCinquina = _
FormatNum(aCin(idCin, 1)) & "-" & _
FormatNum(aCin(idCin, 2)) & "-" & _
FormatNum(aCin(idCin, 3)) & "-" & _
FormatNum(aCin(idCin, 4)) & "-" & _
FormatNum(aCin(idCin, 5))

End Function
 
Scusate l'intromissione. Incuriosito dal metodo, sono sempre alla ricerca di metodi buoni, pessimi, non ha importanza.
Ho chiesto alla AI di farmi una macro seguendo le indicazioni di Rossella35.
Ho anche chiesto di fare un controllo sui risultati nelle 9 estrazioni successive al pronostico.
Se la AI abbia seguito scrupolosamente, oppure no, le indicazioni, travalica le mie capacità di comprensione.
Vi metto un po' di risultati compreso le ultimissime estrazioni. Riuscite a capire se sono corrette o la AI ha capito ancora meno di me?

1782232593835.png
1782232629031.png
 
non uso metodi , comunque questo , non pare dia grandi risultati. fatto alcune prove a ritroso veloci

--- ciao inricordo cioa rossella ciao joe
 
Ultima modifica:
Ringrazio gli intervenuti e contraccambio volentieri e cordialmente i saluti.

Ho letto lo script di Data e penso funzioni bene perché è un ottimo lavoro.

Personalmente considererò come valide solo le giocate che si generano in UNA Estrazione.

Appena ne avrò tempo,. ma nel frattempo e nel mio script ...

Consiglio di sostituire la piccola funzione per trovare il numero della cinquina:

Codice:
Function C(X)
   Do While X >= 18
      X = X - 18
   Loop
   If X  = 0 Then X = 18
   C = X
End Function

Perché altrimenti genera "00" nelle veci di "18".

:) Buona giornata a Tutte/i.
 
Ciao a Tutti

Cerco i 4 numeri della cinquina pentagonale nella stessa estrazione e ho visto che è quello che consiglia Joe

Codice:
Option Explicit
Sub Main()
   Dim Es,Ini,Fin,R1,R2,R3,P1,P2,P3,P4,P5,P6
   Dim A,B,C,D,K1,K2,Casi,Caso,E1,E2
   Dim Salvo50,Clp1,Abb1,Abb2
   Dim Num(5),Nu(5),Ambo1(2),Ambo2(2),Terno(3)
   Dim Ruo(2),Posta(2),Poste(3)
   Posta(2) = 1
   Poste(2) = 1
   Poste(3) = 1
   Fin = EstrazioneFin
   Ini = InputBox("Inserisci l'estrazione che vuoi iniziare",Salvo50,10650)
   Clp1 = InputBox("Per quanti colpi vuoi giocare l'ambata?",,10)
   Call ScegliRange(Ini,Fin,Ini,Fin)
   Scrivi Space(10) & " Per Rossella 35 - Metodo Sulle Cinquine Pentagonali - Script Salvo50" & Space(10),1,,4,,3,,1
   For Es = Ini To Fin
      AvanzamentoElab Ini,Fin,Es
      Caso = 0
      For R1 = 1 To 10
         For P1 = 1 To 4
            For P2 = P1 + 1 To 5
               A = Estratto(Es,R1,P1)
               B = Estratto(Es,R1,P2)
               If Distanza(A,B) = 18 Or Distanza(A,B) = 36 Then
                  For R2 = R1 + 1 To 12
                     If R2 = 11 Then R2 = 12
                     For P3 = 1 To 4
                        For P4 = P3 + 1 To 5
                           C = Estratto(Es,R2,P3)
                           D = Estratto(Es,R2,P4)
                           If(A <> C And B <> C And A <> D And B <> D) Then
                              If(Distanza(A,C) = 18 Or Distanza(A,C) = 36) And(Distanza(B,C) = 18 Or Distanza(B,C) = 36) _
                                 And(Distanza(A,D) = 18 Or Distanza(A,D) = 36) And(Distanza(B,D) = 18 Or Distanza(B,D) = 36)Then '<<<<<
                                 Num(1) = A
                                 Nu(1) = A
                                 For K1 = 2 To 5
                                    Num(K1) = Fuori90(Num(K1 - 1) + 18)
                                    Nu(K1) = Num(K1)
                                 Next
                                 For K2 = 1 To 5
                                    If Num(K2) = A Or Num(K2) = B Or Num(K2) = C Or Num(K2) = D Then Num(K2) = 0
                                 Next
                                 OrdinaMatrice Nu,1
                                 OrdinaMatrice Num,- 1
                                 Abb1 = Fuori90(Num(1) * 2)
                                 Abb2 = Diametrale(Abb1)
                                 Ambo1(1) = Num(1) : Ambo1(2) = Abb1
                                 Ambo2(1) = Num(1) : Ambo2(2) = Abb2
                                 Terno(1) = Num(1) : Terno(2) = Abb1 : Terno(3) = Abb2
                                 Caso = Caso + 1
                                 Casi = Casi + 1
                                 ColoreTesto 1
                                 Scrivi String(89,"o") & " Casi Totali " & FormattaStringa(Casi,"0000")
                                 ColoreTesto 2
                                 Scrivi String(80,"o") & " Estrazione " &(Es) & " caso " & FormattaStringa(Caso,"0000")
                                 ColoreTesto 0
                                 Scrivi(" Estrazione n." & Format2(Es) & " del " & DataEstrazione(Es)),1,0
                                 Scrivi "  " & SiglaRuota(R1) & "  ",1,0
                                 For P5 = 1 To 5
                                    E1 = Estratto(Es,R1,P5)
                                    If E1 = A Or E1 = B Then
                                       ColoreTesto 2
                                    Else
                                       ColoreTesto 0
                                    End If
                                    Scrivi Format2(E1) & " ",1,0
                                    ColoreTesto 0
                                 Next
                                 Scrivi
                                 Scrivi(" Estrazione n." & Format2(Es) & " del " & DataEstrazione(Es)),1,0
                                 Scrivi "  " & SiglaRuota(R2) & "  ",1,0
                                 For P6 = 1 To 5
                                    E2 = Estratto(Es,R2,P6)
                                    If E2 = C Or E2 = D Then
                                       ColoreTesto 2
                                    Else
                                       ColoreTesto 0
                                    End If
                                    Scrivi Format2(E2) & " ",1,0
                                    ColoreTesto 0
                                 Next
                                 Scrivi
                                 Scrivi
                                 Scrivi " Cinquina Pentagonale Completa ",1,0
                                 Scrivi StringaNumeri(Nu," ",True),1,0,,1
                                 Scrivi "  Il numero mancante è  ",1,0
                                 Scrivi Format2(Num(1)),1,,,2
                                 Scrivi
                                 Ruo(1) = R1 : Ruo(2) = R2
                                 ImpostaGiocata 1,Ambo1,Ruo,Posta,Clp1
                                 ImpostaGiocata 2,Ambo2,Ruo,Posta,Clp1
                                 ImpostaGiocata 3,Terno,Ruo,Poste,Clp1
                                 Gioca Es,1
                              End If
                           End If
                        Next
                     Next
                  Next
               End If
            Next
         Next
      Next
      If ScriptInterrotto Then Exit Sub
   Next
   ScriviResoconto
End Sub
 
questo e' in python , molto comodo



from pathlib import Path
from datetime import datetime
from itertools import combinations
import csv
import re


# ============================================================
# CONFIGURAZIONE
# ============================================================

FILE_STORICO = Path(r"C:\Users\MA\Desktop\LOCH\storico01-oggi.txt")

ULTIME_ESTRAZIONI = 3

# True = considera solo ruote dove nella cinquina pentagonale sono usciti ESATTAMENTE 2 numeri
# False = considera anche casi con 3 o più numeri, generando tutte le coppie possibili
SOLO_AMBI_ESATTI = True

# True = le due coppie devono stare su due ruote diverse
RUOTE_DIVERSE = True

SALVA_CSV = True
FILE_REPORT_CSV = Path(r"C:\Users\MA\Desktop\LOCH\report_pentagonali_ultime3.csv")


# ============================================================
# CINQUINE PENTAGONALI DISTANZA 18
# ============================================================

CINQUINE_PENTAGONALI = [
(1, 19, 37, 55, 73),
(2, 20, 38, 56, 74),
(3, 21, 39, 57, 75),
(4, 22, 40, 58, 76),
(5, 23, 41, 59, 77),
(6, 24, 42, 60, 78),
(7, 25, 43, 61, 79),
(8, 26, 44, 62, 80),
(9, 27, 45, 63, 81),
(10, 28, 46, 64, 82),
(11, 29, 47, 65, 83),
(12, 30, 48, 66, 84),
(13, 31, 49, 67, 85),
(14, 32, 50, 68, 86),
(15, 33, 51, 69, 87),
(16, 34, 52, 70, 88),
(17, 35, 53, 71, 89),
(18, 36, 54, 72, 90),
]


RUOTE_MAP = {
"BARI": "BA",
"BA": "BA",
"CAGLIARI": "CA",
"CA": "CA",
"FIRENZE": "FI",
"FI": "FI",
"GENOVA": "GE",
"GE": "GE",
"MILANO": "MI",
"MI": "MI",
"NAPOLI": "NA",
"NA": "NA",
"PALERMO": "PA",
"PA": "PA",
"ROMA": "RM",
"RM": "RM",
"TORINO": "TO",
"TO": "TO",
"VENEZIA": "VE",
"VE": "VE",
"NAZIONALE": "RN",
"RN": "RN",
}


# ============================================================
# FUNZIONI
# ============================================================

def parse_data(testo):
formati = ("%Y/%m/%d", "%Y-%m-%d", "%d/%m/%Y", "%d-%m-%Y")

for formato in formati:
try:
return datetime.strptime(testo, formato).date()
except ValueError:
pass

return None


def normalizza_ruota(testo):
testo = testo.strip().upper()
return RUOTE_MAP.get(testo)


def doppio_ciclometrico(numero):
"""
Doppio in ciclo 1-90.
Esempio:
14 -> 28
50 -> 10
90 -> 90
"""
return ((numero * 2 - 1) % 90) + 1


def diametrale(numero):
"""
Diametrale a distanza 45.
Esempio:
28 -> 73
73 -> 28
"""
if numero <= 45:
return numero + 45
return numero - 45


def format_data(data):
return data.strftime("%d/%m/%Y")


def leggi_storico(percorso):
if not percorso.exists():
raise FileNotFoundError(f"File storico non trovato: {percorso}")

records = []

with percorso.open("r", encoding="utf-8", errors="ignore") as f:
for numero_riga, riga in enumerate(f, start=1):
riga = riga.strip()

if not riga or riga.startswith("#"):
continue

parti = re.split(r"[\s,;]+", riga)

data = None
indice_data = None

for i, token in enumerate(parti):
data_trovata = parse_data(token)
if data_trovata is not None:
data = data_trovata
indice_data = i
break

if data is None:
continue

if indice_data + 6 >= len(parti):
continue

ruota = normalizza_ruota(parti[indice_data + 1])

if ruota is None:
continue

numeri = []

for token in parti[indice_data + 2:]:
if token.isdigit():
n = int(token)
if 1 <= n <= 90:
numeri.append(n)

if len(numeri) == 5:
break

if len(numeri) != 5:
continue

records.append({
"data": data,
"ruota": ruota,
"numeri": tuple(numeri),
"riga": numero_riga,
})

return records


def trova_segnali(records):
date_ordinate = sorted({r["data"] for r in records})

if len(date_ordinate) < ULTIME_ESTRAZIONI:
raise ValueError(
f"Lo storico contiene solo {len(date_ordinate)} date distinte. "
f"Ne servono almeno {ULTIME_ESTRAZIONI}."
)

ultime_date = date_ordinate[-ULTIME_ESTRAZIONI:]
recenti = [r for r in records if r["data"] in ultime_date]

hits = []

for record in recenti:
numeri_ruota = set(record["numeri"])

for indice_cinquina, cinquina in enumerate(CINQUINE_PENTAGONALI, start=1):
set_cinquina = set(cinquina)
presenti = sorted(numeri_ruota & set_cinquina)

if SOLO_AMBI_ESATTI:
if len(presenti) == 2:
hits.append({
"data": record["data"],
"ruota": record["ruota"],
"cinquina_id": indice_cinquina,
"cinquina": cinquina,
"coppia": tuple(presenti),
"numeri_estratti": record["numeri"],
})
else:
if len(presenti) >= 2:
for coppia in combinations(presenti, 2):
hits.append({
"data": record["data"],
"ruota": record["ruota"],
"cinquina_id": indice_cinquina,
"cinquina": cinquina,
"coppia": tuple(coppia),
"numeri_estratti": record["numeri"],
})

risultati = []

for h1, h2 in combinations(hits, 2):
if h1["cinquina_id"] != h2["cinquina_id"]:
continue

if RUOTE_DIVERSE and h1["ruota"] == h2["ruota"]:
continue

numeri_sortiti = set(h1["coppia"]) | set(h2["coppia"])

# Il metodo richiede 4 numeri sortiti della stessa cinquina,
# così il quinto diventa il capogioco.
if len(numeri_sortiti) != 4:
continue

cinquina = set(h1["cinquina"])
mancanti = sorted(cinquina - numeri_sortiti)

if len(mancanti) != 1:
continue

capogioco = mancanti[0]
abb_1 = doppio_ciclometrico(capogioco)
abb_2 = diametrale(abb_1)

risultati.append({
"cinquina_id": h1["cinquina_id"],
"cinquina": h1["cinquina"],
"data_1": h1["data"],
"ruota_1": h1["ruota"],
"coppia_1": h1["coppia"],
"data_2": h2["data"],
"ruota_2": h2["ruota"],
"coppia_2": h2["coppia"],
"capogioco": capogioco,
"abbinamento_1": abb_1,
"abbinamento_2": abb_2,
"ambo_1": (capogioco, abb_1),
"ambo_2": (capogioco, abb_2),
"terno": (capogioco, abb_1, abb_2),
})

risultati.sort(
key=lambda x: (
x["cinquina_id"],
x["data_1"],
x["ruota_1"],
x["data_2"],
x["ruota_2"],
x["capogioco"],
)
)

return ultime_date, risultati


def stampa_report(ultime_date, risultati):
print()
print("=" * 100)
print("METODO CINQUINE PENTAGONALI - CONTROLLO ULTIME 3 ESTRAZIONI")
print("=" * 100)
print("Date controllate:", " | ".join(format_data(d) for d in ultime_date))
print()

if not risultati:
print("Nessun segnale trovato con i parametri attuali.")
print()
return

for i, r in enumerate(risultati, start=1):
print("-" * 100)
print(f"SEGNALE #{i}")
print(f"Cinquina pentagonale #{r['cinquina_id']}: {r['cinquina']}")
print(
f"1) {format_data(r['data_1'])} - {r['ruota_1']} "
f"-> coppia {r['coppia_1']}"
)
print(
f"2) {format_data(r['data_2'])} - {r['ruota_2']} "
f"-> coppia {r['coppia_2']}"
)
print()
print(f"Capogioco / ambata: {r['capogioco']}")
print(f"1° abbinamento, doppio dell'ambata: {r['abbinamento_1']}")
print(f"2° abbinamento, diametrale del doppio: {r['abbinamento_2']}")
print()
print(f"Previsione ambo 1: {r['ambo_1'][0]}-{r['ambo_1'][1]}")
print(f"Previsione ambo 2: {r['ambo_2'][0]}-{r['ambo_2'][1]}")
print(f"Previsione terno : {r['terno'][0]}-{r['terno'][1]}-{r['terno'][2]}")

print("-" * 100)
print()


def salva_csv(risultati, percorso):
if not risultati:
return

with percorso.open("w", newline="", encoding="utf-8") as f:
campi = [
"cinquina_id",
"cinquina",
"data_1",
"ruota_1",
"coppia_1",
"data_2",
"ruota_2",
"coppia_2",
"capogioco",
"abbinamento_1_doppio",
"abbinamento_2_diametrale_del_doppio",
"previsione_ambo_1",
"previsione_ambo_2",
"previsione_terno",
]

writer = csv.DictWriter(f, fieldnames=campi, delimiter=";")
writer.writeheader()

for r in risultati:
writer.writerow({
"cinquina_id": r["cinquina_id"],
"cinquina": "-".join(map(str, r["cinquina"])),
"data_1": format_data(r["data_1"]),
"ruota_1": r["ruota_1"],
"coppia_1": "-".join(map(str, r["coppia_1"])),
"data_2": format_data(r["data_2"]),
"ruota_2": r["ruota_2"],
"coppia_2": "-".join(map(str, r["coppia_2"])),
"capogioco": r["capogioco"],
"abbinamento_1_doppio": r["abbinamento_1"],
"abbinamento_2_diametrale_del_doppio": r["abbinamento_2"],
"previsione_ambo_1": "-".join(map(str, r["ambo_1"])),
"previsione_ambo_2": "-".join(map(str, r["ambo_2"])),
"previsione_terno": "-".join(map(str, r["terno"])),
})


def main():
try:
records = leggi_storico(FILE_STORICO)

if not records:
print("Nessuna estrazione valida trovata nello storico.")
return

ultime_date, risultati = trova_segnali(records)
stampa_report(ultime_date, risultati)

if SALVA_CSV and risultati:
salva_csv(risultati, FILE_REPORT_CSV)
print("Report CSV salvato in:")
print(FILE_REPORT_CSV)

except Exception as e:
print()
print("ERRORE:")
print(e)
print()


if __name__ == "__main__":
main()
 
Ultima modifica:
risultato in python

====================================================================================================
METODO CINQUINE PENTAGONALI - CONTROLLO ULTIME 3 ESTRAZIONI
====================================================================================================
Date controllate: 19/06/2026 | 20/06/2026 | 23/06/2026

----------------------------------------------------------------------------------------------------
SEGNALE #1
Cinquina pentagonale #6: (6, 24, 42, 60, 78)
1) 19/06/2026 - FI -> coppia (6, 60)
2) 20/06/2026 - PA -> coppia (42, 78)

Capogioco / ambata: 24
1° abbinamento, doppio dell'ambata: 48
2° abbinamento, diametrale del doppio: 3

Previsione ambo 1: 24-48
Previsione ambo 2: 24-3
Previsione terno : 24-48-3
----------------------------------------------------------------------------------------------------
SEGNALE #2
Cinquina pentagonale #6: (6, 24, 42, 60, 78)
1) 19/06/2026 - FI -> coppia (6, 60)
2) 23/06/2026 - BA -> coppia (24, 42)

Capogioco / ambata: 78
1° abbinamento, doppio dell'ambata: 66
2° abbinamento, diametrale del doppio: 21

Previsione ambo 1: 78-66
Previsione ambo 2: 78-21
Previsione terno : 78-66-21
----------------------------------------------------------------------------------------------------
SEGNALE #3
Cinquina pentagonale #18: (18, 36, 54, 72, 90)
1) 19/06/2026 - VE -> coppia (18, 72)
2) 23/06/2026 - PA -> coppia (54, 90)

Capogioco / ambata: 36
1° abbinamento, doppio dell'ambata: 72
2° abbinamento, diametrale del doppio: 27

Previsione ambo 1: 36-72
Previsione ambo 2: 36-27
Previsione terno : 36-72-27
----------------------------------------------------------------------------------------------------
SEGNALE #4
Cinquina pentagonale #18: (18, 36, 54, 72, 90)
1) 20/06/2026 - RN -> coppia (18, 72)
2) 23/06/2026 - PA -> coppia (54, 90)

Capogioco / ambata: 36
1° abbinamento, doppio dell'ambata: 72
2° abbinamento, diametrale del doppio: 27

Previsione ambo 1: 36-72
Previsione ambo 2: 36-27
Previsione terno : 36-72-27
----------------------------------------------------------------------------------------------------
 
Ultima modifica:
per spaziometria una estrazione

Option Explicit

' ==============================================================================
' METODO CINQUINE PENTAGONALI - ULTIMA 1 ESTRAZIONE
' Script per Spaziometria / SpazioScript
'
' Logica:
' - Controlla solo l'ultima estrazione disponibile.
' - Cerca su due ruote diverse due coppie appartenenti alla stessa cinquina.
' - Se le due coppie coprono 4 numeri diversi della cinquina, il quinto mancante
' diventa il capogioco / ambata.
' - 1° abbinamento = doppio ciclometrico del capogioco.
' - 2° abbinamento = diametrale del doppio.
'
' Esempio:
' Cinquina: 14-32-50-68-86
' Coppie: 86-50 e 32-68
' Mancante: 14
' Doppio: 28
' Diametrale del doppio: 73
' Previsione: 14-28 / 14-73 / 14-28-73
' ==============================================================================

Const SOLO_AMBI_ESATTI = True
Const RUOTE_DIVERSE = True


Sub Main()

Dim aRuote
Dim aCin
Dim aTitoli
Dim aRiga

Dim Fine
Dim Inizio
Dim es
Dim iRuota
Dim Ruota
Dim idCin
Dim p
Dim n

Dim cnt
Dim n1
Dim n2
Dim nMin
Dim nMax

Dim h
Dim h1
Dim h2
Dim idRiga

Dim capogioco
Dim abb1
Dim abb2

Dim aHData()
Dim aHRuota()
Dim aHCin()
Dim aHN1()
Dim aHN2()

Dim trovato

Call CaricaRuote(aRuote)
Call CaricaCinquine(aCin)

Fine = EstrazioneFin
Inizio = Fine

If Inizio < EstrazioneIni Then
Inizio = EstrazioneIni
End If

ReDim aHData(1000)
ReDim aHRuota(1000)
ReDim aHCin(1000)
ReDim aHN1(1000)
ReDim aHN2(1000)

h = 0

' --------------------------------------------------------------------------
' 1) RICERCA DELLE COPPIE SOLO NELL'ULTIMA ESTRAZIONE
' --------------------------------------------------------------------------

For es = Inizio To Fine

For iRuota = 1 To UBound(aRuote)

Ruota = aRuote(iRuota)

For idCin = 1 To 18

cnt = 0
n1 = 0
n2 = 0

For p = 1 To 5

n = Estratto(es, Ruota, p)

If NumeroInCinquina(n, aCin, idCin) Then

cnt = cnt + 1

If cnt = 1 Then
n1 = n
ElseIf cnt = 2 Then
n2 = n
End If

End If

Next

If SOLO_AMBI_ESATTI Then

If cnt = 2 Then

Call OrdinaCoppia(n1, n2, nMin, nMax)

h = h + 1
aHData(h) = es
aHRuota(h) = Ruota
aHCin(h) = idCin
aHN1(h) = nMin
aHN2(h) = nMax

End If

Else

' Versione prudenziale non attiva.
' Il metodo originale lavora su due ambi netti.
' Se vuoi includere ruote con 3 o più numeri della stessa cinquina,
' conviene sviluppare tutte le coppie possibili con una sub dedicata.

End If

Next

Next

Next


' --------------------------------------------------------------------------
' 2) TABELLA RISULTATI
' --------------------------------------------------------------------------

ReDim aTitoli(14)

aTitoli(1) = "Cinquina"
aTitoli(2) = "Data 1"
aTitoli(3) = "Ruota 1"
aTitoli(4) = "Coppia 1"
aTitoli(5) = "Data 2"
aTitoli(6) = "Ruota 2"
aTitoli(7) = "Coppia 2"
aTitoli(8) = "Capogioco"
aTitoli(9) = "Doppio"
aTitoli(10) = "Diametrale"
aTitoli(11) = "Ambo 1"
aTitoli(12) = "Ambo 2"
aTitoli(13) = "Terno"
aTitoli(14) = "Ruote"

Call InitTabella(aTitoli, vbCyan)

Scrivi "Metodo cinquine pentagonali - controllo ultima 1 estrazione", 1
Scrivi "Estrazione controllata: " & GetInfoEstrazione(Fine), 1
Scrivi

idRiga = 0
trovato = False

For h1 = 1 To h - 1

For h2 = h1 + 1 To h

If aHCin(h1) = aHCin(h2) Then

If RUOTE_DIVERSE = False Or aHRuota(h1) <> aHRuota(h2) Then

If QuattroDiversi(aHN1(h1), aHN2(h1), aHN1(h2), aHN2(h2)) Then

capogioco = NumeroMancante(aCin, aHCin(h1), aHN1(h1), aHN2(h1), aHN1(h2), aHN2(h2))

If capogioco > 0 Then

abb1 = Doppio90(capogioco)
abb2 = Diametrale(abb1)

idRiga = idRiga + 1
trovato = True

ReDim aRiga(14)

aRiga(1) = StringaCinquina(aCin, aHCin(h1))
aRiga(2) = GetInfoEstrazione(aHData(h1))
aRiga(3) = SiglaRuota(aHRuota(h1))
aRiga(4) = FormatNum(aHN1(h1)) & "-" & FormatNum(aHN2(h1))
aRiga(5) = GetInfoEstrazione(aHData(h2))
aRiga(6) = SiglaRuota(aHRuota(h2))
aRiga(7) = FormatNum(aHN1(h2)) & "-" & FormatNum(aHN2(h2))
aRiga(8) = FormatNum(capogioco)
aRiga(9) = FormatNum(abb1)
aRiga(10) = FormatNum(abb2)
aRiga(11) = FormatNum(capogioco) & "-" & FormatNum(abb1)
aRiga(12) = FormatNum(capogioco) & "-" & FormatNum(abb2)
aRiga(13) = FormatNum(capogioco) & "-" & FormatNum(abb1) & "-" & FormatNum(abb2)
aRiga(14) = SiglaRuota(aHRuota(h1)) & "-" & SiglaRuota(aHRuota(h2))

Call AddRigaTabella(aRiga, , "center")

End If

End If

End If

End If

Next

Next

If trovato Then
Call CreaTabella()
Else
Scrivi "Nessun segnale trovato sull'ultima estrazione.", 1
End If

End Sub


' ==============================================================================
' DATI BASE
' ==============================================================================

Sub CaricaRuote(ByRef aRuote)

ReDim aRuote(10)

aRuote(1) = BA_
aRuote(2) = CA_
aRuote(3) = FI_
aRuote(4) = GE_
aRuote(5) = MI_
aRuote(6) = NA_
aRuote(7) = PA_
aRuote(8) = RO_
aRuote(9) = TO_
aRuote(10) = VE_

End Sub


Sub CaricaCinquine(ByRef aCin)

ReDim aCin(18, 5)

aCin(1, 1) = 1 : aCin(1, 2) = 19 : aCin(1, 3) = 37 : aCin(1, 4) = 55 : aCin(1, 5) = 73
aCin(2, 1) = 2 : aCin(2, 2) = 20 : aCin(2, 3) = 38 : aCin(2, 4) = 56 : aCin(2, 5) = 74
aCin(3, 1) = 3 : aCin(3, 2) = 21 : aCin(3, 3) = 39 : aCin(3, 4) = 57 : aCin(3, 5) = 75
aCin(4, 1) = 4 : aCin(4, 2) = 22 : aCin(4, 3) = 40 : aCin(4, 4) = 58 : aCin(4, 5) = 76
aCin(5, 1) = 5 : aCin(5, 2) = 23 : aCin(5, 3) = 41 : aCin(5, 4) = 59 : aCin(5, 5) = 77
aCin(6, 1) = 6 : aCin(6, 2) = 24 : aCin(6, 3) = 42 : aCin(6, 4) = 60 : aCin(6, 5) = 78
aCin(7, 1) = 7 : aCin(7, 2) = 25 : aCin(7, 3) = 43 : aCin(7, 4) = 61 : aCin(7, 5) = 79
aCin(8, 1) = 8 : aCin(8, 2) = 26 : aCin(8, 3) = 44 : aCin(8, 4) = 62 : aCin(8, 5) = 80
aCin(9, 1) = 9 : aCin(9, 2) = 27 : aCin(9, 3) = 45 : aCin(9, 4) = 63 : aCin(9, 5) = 81
aCin(10, 1) = 10 : aCin(10, 2) = 28 : aCin(10, 3) = 46 : aCin(10, 4) = 64 : aCin(10, 5) = 82
aCin(11, 1) = 11 : aCin(11, 2) = 29 : aCin(11, 3) = 47 : aCin(11, 4) = 65 : aCin(11, 5) = 83
aCin(12, 1) = 12 : aCin(12, 2) = 30 : aCin(12, 3) = 48 : aCin(12, 4) = 66 : aCin(12, 5) = 84
aCin(13, 1) = 13 : aCin(13, 2) = 31 : aCin(13, 3) = 49 : aCin(13, 4) = 67 : aCin(13, 5) = 85
aCin(14, 1) = 14 : aCin(14, 2) = 32 : aCin(14, 3) = 50 : aCin(14, 4) = 68 : aCin(14, 5) = 86
aCin(15, 1) = 15 : aCin(15, 2) = 33 : aCin(15, 3) = 51 : aCin(15, 4) = 69 : aCin(15, 5) = 87
aCin(16, 1) = 16 : aCin(16, 2) = 34 : aCin(16, 3) = 52 : aCin(16, 4) = 70 : aCin(16, 5) = 88
aCin(17, 1) = 17 : aCin(17, 2) = 35 : aCin(17, 3) = 53 : aCin(17, 4) = 71 : aCin(17, 5) = 89
aCin(18, 1) = 18 : aCin(18, 2) = 36 : aCin(18, 3) = 54 : aCin(18, 4) = 72 : aCin(18, 5) = 90

End Sub


' ==============================================================================
' FUNZIONI DI CONTROLLO
' ==============================================================================

Function NumeroInCinquina(n, aCin, idCin)

Dim i

NumeroInCinquina = False

For i = 1 To 5
If n = aCin(idCin, i) Then
NumeroInCinquina = True
Exit Function
End If
Next

End Function


Function QuattroDiversi(a, b, c, d)

QuattroDiversi = False

If a = b Then Exit Function
If a = c Then Exit Function
If a = d Then Exit Function
If b = c Then Exit Function
If b = d Then Exit Function
If c = d Then Exit Function

QuattroDiversi = True

End Function


Function NumeroMancante(aCin, idCin, n1, n2, n3, n4)

Dim i
Dim n

NumeroMancante = 0

For i = 1 To 5

n = aCin(idCin, i)

If n <> n1 And n <> n2 And n <> n3 And n <> n4 Then
NumeroMancante = n
Exit Function
End If

Next

End Function


Sub OrdinaCoppia(n1, n2, ByRef nMin, ByRef nMax)

If n1 <= n2 Then
nMin = n1
nMax = n2
Else
nMin = n2
nMax = n1
End If

End Sub


' ==============================================================================
' CALCOLI CICLOMETRICI
' ==============================================================================

Function Doppio90(n)

Doppio90 = ((n * 2 - 1) Mod 90) + 1

End Function


Function Diametrale(n)

If n <= 45 Then
Diametrale = n + 45
Else
Diametrale = n - 45
End If

End Function


' ==============================================================================
' FORMATTAZIONE
' ==============================================================================

Function FormatNum(n)

If n < 10 Then
FormatNum = "0" & CStr(n)
Else
FormatNum = CStr(n)
End If

End Function


Function StringaCinquina(aCin, idCin)

StringaCinquina = _
FormatNum(aCin(idCin, 1)) & "-" & _
FormatNum(aCin(idCin, 2)) & "-" & _
FormatNum(aCin(idCin, 3)) & "-" & _
FormatNum(aCin(idCin, 4)) & "-" & _
FormatNum(aCin(idCin, 5))

End Function
 
Metodo cinquine pentagonali - controllo ultima 1 estrazione
Estrazione controllata: [07213] [100] 23.06.2026

Nessun segnale trovato sull'ultima estrazione.
 
Ciao a Tutti

Cerco i 4 numeri della cinquina pentagonale nella stessa estrazione e ho visto che è quello che consiglia Joe

Codice:
Option Explicit
Sub Main()
   Dim Es,Ini,Fin,R1,R2,R3,P1,P2,P3,P4,P5,P6
   Dim A,B,C,D,K1,K2,Casi,Caso,E1,E2
   Dim Salvo50,Clp1,Abb1,Abb2
   Dim Num(5),Nu(5),Ambo1(2),Ambo2(2),Terno(3)
   Dim Ruo(2),Posta(2),Poste(3)
   Posta(2) = 1
   Poste(2) = 1
   Poste(3) = 1
   Fin = EstrazioneFin
   Ini = InputBox("Inserisci l'estrazione che vuoi iniziare",Salvo50,10650)
   Clp1 = InputBox("Per quanti colpi vuoi giocare l'ambata?",,10)
   Call ScegliRange(Ini,Fin,Ini,Fin)
   Scrivi Space(10) & " Per Rossella 35 - Metodo Sulle Cinquine Pentagonali - Script Salvo50" & Space(10),1,,4,,3,,1
   For Es = Ini To Fin
      AvanzamentoElab Ini,Fin,Es
      Caso = 0
      For R1 = 1 To 10
         For P1 = 1 To 4
            For P2 = P1 + 1 To 5
               A = Estratto(Es,R1,P1)
               B = Estratto(Es,R1,P2)
               If Distanza(A,B) = 18 Or Distanza(A,B) = 36 Then
                  For R2 = R1 + 1 To 12
                     If R2 = 11 Then R2 = 12
                     For P3 = 1 To 4
                        For P4 = P3 + 1 To 5
                           C = Estratto(Es,R2,P3)
                           D = Estratto(Es,R2,P4)
                           If(A <> C And B <> C And A <> D And B <> D) Then
                              If(Distanza(A,C) = 18 Or Distanza(A,C) = 36) And(Distanza(B,C) = 18 Or Distanza(B,C) = 36) _
                                 And(Distanza(A,D) = 18 Or Distanza(A,D) = 36) And(Distanza(B,D) = 18 Or Distanza(B,D) = 36)Then '<<<<<
                                 Num(1) = A
                                 Nu(1) = A
                                 For K1 = 2 To 5
                                    Num(K1) = Fuori90(Num(K1 - 1) + 18)
                                    Nu(K1) = Num(K1)
                                 Next
                                 For K2 = 1 To 5
                                    If Num(K2) = A Or Num(K2) = B Or Num(K2) = C Or Num(K2) = D Then Num(K2) = 0
                                 Next
                                 OrdinaMatrice Nu,1
                                 OrdinaMatrice Num,- 1
                                 Abb1 = Fuori90(Num(1) * 2)
                                 Abb2 = Diametrale(Abb1)
                                 Ambo1(1) = Num(1) : Ambo1(2) = Abb1
                                 Ambo2(1) = Num(1) : Ambo2(2) = Abb2
                                 Terno(1) = Num(1) : Terno(2) = Abb1 : Terno(3) = Abb2
                                 Caso = Caso + 1
                                 Casi = Casi + 1
                                 ColoreTesto 1
                                 Scrivi String(89,"o") & " Casi Totali " & FormattaStringa(Casi,"0000")
                                 ColoreTesto 2
                                 Scrivi String(80,"o") & " Estrazione " &(Es) & " caso " & FormattaStringa(Caso,"0000")
                                 ColoreTesto 0
                                 Scrivi(" Estrazione n." & Format2(Es) & " del " & DataEstrazione(Es)),1,0
                                 Scrivi "  " & SiglaRuota(R1) & "  ",1,0
                                 For P5 = 1 To 5
                                    E1 = Estratto(Es,R1,P5)
                                    If E1 = A Or E1 = B Then
                                       ColoreTesto 2
                                    Else
                                       ColoreTesto 0
                                    End If
                                    Scrivi Format2(E1) & " ",1,0
                                    ColoreTesto 0
                                 Next
                                 Scrivi
                                 Scrivi(" Estrazione n." & Format2(Es) & " del " & DataEstrazione(Es)),1,0
                                 Scrivi "  " & SiglaRuota(R2) & "  ",1,0
                                 For P6 = 1 To 5
                                    E2 = Estratto(Es,R2,P6)
                                    If E2 = C Or E2 = D Then
                                       ColoreTesto 2
                                    Else
                                       ColoreTesto 0
                                    End If
                                    Scrivi Format2(E2) & " ",1,0
                                    ColoreTesto 0
                                 Next
                                 Scrivi
                                 Scrivi
                                 Scrivi " Cinquina Pentagonale Completa ",1,0
                                 Scrivi StringaNumeri(Nu," ",True),1,0,,1
                                 Scrivi "  Il numero mancante è  ",1,0
                                 Scrivi Format2(Num(1)),1,,,2
                                 Scrivi
                                 Ruo(1) = R1 : Ruo(2) = R2
                                 ImpostaGiocata 1,Ambo1,Ruo,Posta,Clp1
                                 ImpostaGiocata 2,Ambo2,Ruo,Posta,Clp1
                                 ImpostaGiocata 3,Terno,Ruo,Poste,Clp1
                                 Gioca Es,1
                              End If
                           End If
                        Next
                     Next
                  Next
               End If
            Next
         Next
      Next
      If ScriptInterrotto Then Exit Sub
   Next
   ScriviResoconto
End Sub
grazie salvo50 , questo tuo metodo fa la ricerca nella stessa estrazione, in realtà la ricerca si fa controllando le ultime tre estrazioni e si deve trovare su due ruote, due coppie di numeri ( 2 ambi ) appartenenti alla stessa cinquina pentagonale, il quinto non ancora sortito sara' il capogioco della nostra previsione., Da questo listato come si fà la modifica? ti ringrazio per quello che fai...
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 23 giugno 2026
    Bari
    42
    24
    70
    09
    58
    Cagliari
    27
    49
    43
    76
    40
    Firenze
    69
    03
    65
    72
    62
    Genova
    19
    28
    03
    85
    75
    Milano
    17
    05
    43
    40
    38
    Napoli
    24
    55
    02
    32
    69
    Palermo
    55
    70
    54
    90
    12
    Roma
    49
    88
    21
    02
    24
    Torino
    58
    16
    60
    38
    73
    Venezia
    84
    12
    69
    02
    44
    Nazionale
    75
    14
    79
    44
    47
    Estrazione Simbolotto
    Napoli
    29
    43
    41
    34
    14
Indietro
Alto