Novità

è possibile questo script ?

Salve a tutti, chiedo gentilmente agli scripter di questo forum se è possibile realizzare questo:
trovare 2 ambi isotopi su tutte le ruote nel range massimo di 10 estrazioni che abbiano la stessa distanza ma che facciano parte di un pentagono in cui manchi il numero centrale. Esempio : estraz. 12.11.2020 Cagliari 30 x x x 33 Firenze 29 x x x 32.
I due ambi isotopi in 1^ e 5^ posizione sono di distanza 3 e manca il 31 (centrale) per completare il pentagono.
Altro esempio : estraz. del 24.9 Bari 5 x x 24 x estraz. del 6.10 Torino 62 x x 81 x , dove le coppie 5-24 e 62-81 sono di distanza 19 e per completare la sequenza manca il numero centrale 43. Spero di essere stato chiaro, e grazie fin da ora per l attenzione.
 

salvo50

Advanced Member >PLATINUM PLUS<
Ciao a Tutti.

Ciao Cronos306090

Vedi se può andare

Codice:
Option Explicit
Sub Main
   Dim FIn,Ini,A,B,C,D,Salvo50,Es
   Dim R1,R2,P1,P2,P5,P6,E1,E2,Caso,Casi
   Dim Di1,Di2,Di3,Manca,Es2
   Dim M1(4)
   FIn = EstrazioneFin
   Ini = CInt(InputBox("Inserisci l'estrazione che vuoi iniziare",Salvo50,9850))
   Call ScegliRange(Ini,FIn,Ini,FIn)
   Scrivi Space(3) & " 2 Ambi Isotopi a Formare Lunghetta di 5 Numeri Stessa Distanza  - script Salvo50",1,,4,,3,,1
   For Es = Ini To FIn
      Messaggio Es
      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)
               For Es2 = Es To Es - 10 Step - 1
                  For R2 = R1 + 1 To 12
                     If R2 = 11 Then R2 = 12
                     C = Estratto(Es2,R2,P1)
                     D = Estratto(Es2,R2,P2)
                     If A > 0 And C > 0 Then
                        'A---B
                        '|   |
                        'C---D
                        If A <> C And A <> D And B <> C And B <> D Then
                           M1(1) = A : M1(2) = B : M1(3) = C : M1(4) = D
                           Call OrdinaMatrice(M1,1)
                           Di1 = Differenza(M1(1),M1(2))
                           Di2 = Differenza(M1(2),M1(3))
                           Di3 = Differenza(M1(3),M1(4))
                           If(Di1 = Di3) And(Di2 = Di1 + Di3) Then
                             ' If Di2 = Di1 * 2 Then
                                 Manca = M1(2) + Di1
                                 Caso = Caso + 1
                                 Casi = Casi + 1
                                 Scrivi String(89,"*") & " Casi Totali " & FormattaStringa(Casi,"0000"),1,,,2
                                 Scrivi String(80,"*") & " Estrazione " &(Es) & " caso " & FormattaStringa(Caso,"0000"),1,,,1
                                 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(Es2) & " del " & DataEstrazione(Es2)),1,0
                                 Scrivi " " & SiglaRuota(R2) & " ",1,0
                                 For P6 = 1 To 5
                                    E2 = Estratto(Es2,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 Space(25) & Format2(M1(1)) & " " & Format2(M1(2)) & " ",1,0
                                 Scrivi Format2(Manca) & " ",1,0,,2
                                 Scrivi Format2(M1(3)) & " " & Format2(M1(4)) & " Distanza " & Format2(Di1),1
                              'End If
                           End If
                        End If
                     End If
                  Next
               Next
            Next
         Next
      Next
      If ScriptInterrotto Then Exit Sub
   Next
End Sub
 
Ultima modifica:
Ciao a Tutti.

Ciao Cronos306090

Vedi se può andare

Codice:
Option Explicit
Sub Main
   Dim FIn,Ini,A,B,C,D,Salvo50,Es
   Dim R1,R2,P1,P2,P5,P6,E1,E2,Caso,Casi
   Dim Di1,Di2,Di3,Manca,Es2
   Dim M1(4)
   FIn = EstrazioneFin
   Ini = CInt(InputBox("Inserisci l'estrazione che vuoi iniziare",Salvo50,9850))
   Call ScegliRange(Ini,FIn,Ini,FIn)
   Scrivi Space(3) & " 2 Ambi Isotopi a Formare Lunghetta di 5 Numeri Stessa Distanza  - script Salvo50",1,,4,,3,,1
   For Es = Ini To FIn
      Messaggio Es
      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)
               For Es2 = Es To Es - 10 Step - 1
                  For R2 = R1 + 1 To 12
                     If R2 = 11 Then R2 = 12
                     C = Estratto(Es2,R2,P1)
                     D = Estratto(Es2,R2,P2)
                     If A > 0 And C > 0 Then
                        'A---B
                        '|   |
                        'C---D
                        If A <> C And A <> D And B <> C And B <> D Then
                           M1(1) = A : M1(2) = B : M1(3) = C : M1(4) = D
                           Call OrdinaMatrice(M1,1)
                           Di1 = Differenza(M1(1),M1(2))
                           Di2 = Differenza(M1(2),M1(3))
                           Di3 = Differenza(M1(3),M1(4))
                           If(Di1 = Di3) And(Di2 = Di1 + Di3) Then
                              If Di2 = Di1 * 2 Then
                                 Manca = M1(2) + Di1
                                 Caso = Caso + 1
                                 Casi = Casi + 1
                                 Scrivi String(89,"*") & " Casi Totali " & FormattaStringa(Casi,"0000"),1,,,2
                                 Scrivi String(80,"*") & " Estrazione " &(Es) & " caso " & FormattaStringa(Caso,"0000"),1,,,1
                                 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(Es2) & " del " & DataEstrazione(Es2)),1,0
                                 Scrivi " " & SiglaRuota(R2) & " ",1,0
                                 For P6 = 1 To 5
                                    E2 = Estratto(Es2,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 Space(25) & Format2(M1(1)) & " " & Format2(M1(2)) & " ",1,0
                                 Scrivi Format2(Manca) & " ",1,0,,2
                                 Scrivi Format2(M1(3)) & " " & Format2(M1(4)) & " Distanza " & Format2(Di1),1
                              End If
                           End If
                        End If
                     End If
                  Next
               Next
            Next
         Next
      Next
      If ScriptInterrotto Then Exit Sub
   Next
End Sub
Spettacolare Salvo50! esattamente cosi. Ti ringrazio tantissimo! mi hai salvato occhi e fegato :)
 

Ultima estrazione Lotto

  • Estrazione del lotto
    martedì 30 aprile 2024
    Bari
    08
    67
    03
    02
    46
    Cagliari
    67
    01
    87
    84
    47
    Firenze
    31
    56
    40
    53
    50
    Genova
    03
    19
    45
    47
    25
    Milano
    71
    48
    51
    12
    13
    Napoli
    45
    19
    49
    76
    56
    Palermo
    58
    74
    86
    37
    67
    Roma
    26
    79
    47
    38
    58
    Torino
    32
    71
    39
    84
    80
    Venezia
    52
    31
    22
    42
    19
    Nazionale
    06
    83
    47
    20
    41
    Estrazione Simbolotto
    Genova
    03
    05
    45
    40
    19
Alto