Novità

PER SALVO50: RICHIESTA LISTATO

mariella pepe

Junior Member
Buongiorno Salvo, ti chiedo cortesemente se puoi realizzare un listato con queste caratteristiche.
Condizione: trovare su due ruote (preferibilmente contigue, diametrali o gemelle) due ambi in posizione isotopa aventi la medesima somma verticale oppure la medesima somma diagonale.
L'ambata sarà costituita dalla somma trovata, mentre l'abbinamento per ambo sarà costituito dal triplo sommativo dei due ambi di partenza.
Grazie.
 

salvo50

Advanced Member >PLATINUM PLUS<
Buongiorno Salvo, ti chiedo cortesemente se puoi realizzare un listato con queste caratteristiche.
Condizione: trovare su due ruote (preferibilmente contigue, diametrali o gemelle) due ambi in posizione isotopa aventi la medesima somma verticale oppure la medesima somma diagonale.
L'ambata sarà costituita dalla somma trovata, mentre l'abbinamento per ambo sarà costituito dal triplo sommativo dei due ambi di partenza.
Grazie.
Ciao, fai un esempio di triplo sommativo, anche con numeri fittizi
 

mariella pepe

Junior Member
Ciao Salvo, per triplo sommativo intendo la somma dei singoli elementi che compongono i due ambi.
Es. : PA 5 15
RO 35 45

Somma uguale in diagonale 5 + 45 =50
15 + 35 = 50

triplo sommativo: 5 +15+35+45 = 100
100 fuori 90 = 10

Prev. PA-RO = 50
50 - 10

Idem se la somma uguale la troviamo in verticale. Stesso procedimento:

Es.: TO 10 22
VE 54 42

Somma uguale in verticale 10 + 54 = 64
22 + 42 = 64

triplo sommativo: 10 + 54 + 22 + 42 = 128
128 fuori 90 = 38

Prev.: TO - VE : 64
64 - 38

Spero di essere riuscita nell'intento di far chiarezza.
Se i casi che dovessero verificarsi sono tanti, magari potresti porre qualche filtro in più.
Grazie.
 

salvo50

Advanced Member >PLATINUM PLUS<
Ecco lo script salvo errori o dimenticanze


Codice:
Option Explicit
Sub Main
   Dim FIn,Ini,A,B,C,D,Clp,Es1,Salvo50
   Dim R1,R2,P1,P2,P5,P6,E1,E2,Caso,Casi
   Dim SAC,SBD,SAD,SBC,S1,S2,Abb
   Dim Amba(1),Ambo(2)
   Dim Ruo(2),Po1(1),Po2(2)
   FIn = EstrazioneFin
   Ini = CInt(InputBox("Inserisci l'estrazione che vuoi iniziare",Salvo50,9786))
   Clp = CInt(InputBox(" Per quanti colpi vuoi giocare?",Salvo50,5))
   Po1(1) = 1
   Po2(2) = 1
   For Es1 = Ini To FIn
      Messaggio Es1
      AvanzamentoElab Ini,FIn,Es1
      Caso = 0
      For R1 = 1 To 9
         For P1 = 1 To 4
            For P2 = P1 + 1 To 5
               A = CInt(Estratto(Es1,R1,P1))
               B = CInt(Estratto(Es1,R1,P2))
               For R2 = R1 + 1 To 10
                  S2 = ""
                  If(R2 = R1 + 1) Or(R2 = RuotaDiametrale(R1))Or(R2 = RuotaGemella(R1)) Then
                     If R2 = R1 + 1 Then S2 = S2 & " Ruote consecutive "
                     If R2 = RuotaDiametrale(R1) Then S2 = S2 & " Ruote Diametrali "
                     If R2 = RuotaGemella(R1) Then S2 = S2 & " Ruote Gemelle "
                     C = CInt(Estratto(Es1,R2,P1))
                     D = CInt(Estratto(Es1,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
                           SAC = Fuori90(A + C) : SBD = Fuori90(B + D) : SAD = Fuori90(A + D) : SBC = Fuori90(B + C)
                           If SAC = SBD Or SAD = SBC Then
                              If SAC = SBD Then S1 = SAC
                              If SAD = SBC Then S1 = SAD
                              Abb = Fuori90(A + B + C + D)
                              If(S1 <> Abb) And(SAC <> SAD) Then
                                 Caso = Caso + 1
                                 Casi = Casi + 1
                                 Scrivi String(89,"*") & " Casi Totali " & FormattaStringa(Casi,"0000"),1,,,2
                                 Scrivi String(80,"*") & " Estrazione " &(Es1) & " caso " & FormattaStringa(Caso,"0000"),1,,,1
                                 Scrivi(" Estrazione n." & Format2(Es1) & " del " & DataEstrazione(Es1)),1,0
                                 Scrivi "  " & SiglaRuota(R1) & " ",1,0
                                 For P5 = 1 To 5
                                    E1 = Estratto(Es1,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(Es1) & " del " & DataEstrazione(Es1)),1,0
                                 Scrivi "  " & SiglaRuota(R2) & " ",1,0
                                 For P6 = 1 To 5
                                    E2 = Estratto(Es1,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 Space(10) & NomeRuota(R1) & " " & NomeRuota(R2) & " " & S2,1,,,1
                                 Scrivi Space(24) & "Almeno un gruppo di somme uguali",1,,,2
                                 Scrivi Space(7) & "Estratti " & Space(13) & "Somme " & Space(8) & " Somme",1
                                 Scrivi Space(7) & "Evidenz. " & Space(12) & "Verticali" & Space(5),1,0
                                 Scrivi "Diagonali",1  
                                 Scrivi Space(8) & Format2(A) & " " & Format2(B) & Space(18) & Format2(SAC),1,0
                                 Scrivi Space(12) & Format2(SAD),1 
                                 Scrivi Space(8) & Format2(C) & " " & Format2(D) & Space(18) & Format2(SBD),1,0
                                 Scrivi Space(12) & Format2(SBC),1 
                                 Scrivi
                                 Scrivi Space(8) & Format2(A) & " + " & Format2(B) & " + " & Format2(C),1,0
                                 Scrivi " + " & Format2(D) & " = " & Format2(Abb) & " <-- Abbinamento per Ambo ",1
                                 Ruo(1) = R1
                                 Ruo(2) = R2
                                 Amba(1) = S1
                                 ImpostaGiocata 1,Amba,Ruo,Po1,Clp
                                 Ambo(1) = S1 : Ambo(2) = Abb
                                 ImpostaGiocata 2,Ambo,Ruo,Po2,Clp
                                 Gioca Es1
                              End If
                           End If
                        End If
                     End If
                  End If
               Next
            Next
         Next
      Next
   Next
   ScriviResoconto
End Sub
 
Ultima modifica:

GioRyuKen72

Advanced Member >PLATINUM PLUS<
Call ScegliRange(Ini,FIn,Ini,FIn)

Ciao Mariella e ciao Salvo,
spero di fare cosa gradita, venendo in soccorso a questa richiesta..

per far andare lo script bisogna sostituire quella riga con questa:
Call ScegliRange(EstrazioneIni,FIn,Ini,EstrazioneFin)

Ciao a tutti
Gio.
 

i legend

Premium Member
Ciao Mariella e ciao Salvo,
spero di fare cosa gradita, venendo in soccorso a questa richiesta..

per far andare lo script bisogna sostituire quella riga con questa:
Call ScegliRange(EstrazioneIni,FIn,Ini,EstrazioneFin)

Ciao a tutti
Gio.
Ciao joe riuken
Dim ini,fin
Call sceglirange (ini,fin,estrazioneini,estrazionefin)
Ini e fin prendono il valore scelto
Sono i primi due valori della funzione.
 

salvo50

Advanced Member >PLATINUM PLUS<
Grazie Salvo, ma dà questo errore.
Mariella, metti l'apice a quella riga, probabilmente stai usando una spaziometria con release vecchia oppure l8 oppure un altro programma che non supporta quella funzione, comunque anche questa riga è un supplemento si può togliere, lo script per come è impostato funziona lo stesso.
fammi sapere

Ciao ILegend, non avevo visto il tuo intervento
 
Ultima modifica:

salvo50

Advanced Member >PLATINUM PLUS<
Salvo, utilizzo Lottodesk. Continua a dare errore
Ecco spiegato il motivo che va in errore, comunque ho cancellato anche quest'altra riga, che probabilmente va in errore nella parte finale dopo la virgola, io lottodesk non ce l'ho, uso solo spaziometria. Comunque se dovesse ancora andare in errore, io non ci posso fare niente, per questi miei script devi usare Spaziometria.
 

mariella pepe

Junior Member
Buongiorno Salvo, GioRyuken72, I Legend.
Ho fatto girare il listato su Spaziometria e funziona. Un'ultimo aggiornamento possiamo eliminare il filtro: ruote contigue, diametrali e gemelle?
Ricercare la condizione su tutte le ruote, compresa la Nazionale.
Per restringere la massa delle condizioni che si potrebbero verificare, si può inserire la clausola: il valore della somma trovata (in diagonale oppure in verticale) sia uguale ad uno dei valori che compongono gli ambi di ricerca.
Cosa ne pensate? E' fattibile?
Grazie ragazzi.
 
Ultima modifica:

salvo50

Advanced Member >PLATINUM PLUS<
Buongiorno Salvo, GioRyuken72, I Legend.
Ho fatto girare il listato su Spaziometria e funziona. Un'ultimo aggiornamento possiamo eliminare il filtro: ruote contigue, diametrali e gemelle?
Ricercare la condizione su tutte le ruote, compresa la Nazionale.
Per restringere la massa delle condizioni che si potrebbero verificare, si può inserire la clausola: il valore della somma trovata (in diagonale oppure in verticale) sia uguale ad uno dei valori che compongono gli ambi di ricerca.
Cosa ne pensate? E' fattibile?
Grazie ragazzi.
Ciao a Tutti.

Ciao Mariella, ti posto 2 script, nel primo ho eliminato il filtro delle ruote, consecutive, diametrali e gemelle senza aggiungere altro, nel secondo come da tua richiesta ho messo il filtro del numero uguale

Codice:
Option Explicit
Sub Main
   Dim FIn,Ini,A,B,C,D,Clp,Es1,Salvo50
   Dim R1,R2,P1,P2,P5,P6,E1,E2,Caso,Casi
   Dim SAC,SBD,SAD,SBC,S1,Abb
   Dim Amba(1),Ambo(2)
   Dim Ruo(2),Po1(1),Po2(2)
   FIn = EstrazioneFin
   Ini = CInt(InputBox("Inserisci l'estrazione che vuoi iniziare",Salvo50,9786))
   Clp = CInt(InputBox(" Per quanti colpi vuoi giocare?",Salvo50,5))
   Scrivi Space(12) & " Chiesto da Mariella Pepe - SCRIPT SALVO50               ",1
   Po1(1) = 1
   Po2(2) = 1
   For Es1 = Ini To FIn
      Messaggio Es1
      AvanzamentoElab Ini,FIn,Es1
      Caso = 0
      For R1 = 1 To 10
         For P1 = 1 To 4
            For P2 = P1 + 1 To 5
               A = CInt(Estratto(Es1,R1,P1))
               B = CInt(Estratto(Es1,R1,P2))
               For R2 = R1 + 1 To 12
                  If R2 = 11 Then R2 = 12
                  C = CInt(Estratto(Es1,R2,P1))
                  D = CInt(Estratto(Es1,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
                        SAC = Fuori90(A + C) : SBD = Fuori90(B + D) : SAD = Fuori90(A + D) : SBC = Fuori90(B + C)
                        If SAC = SBD Or SAD = SBC Then
                           If SAC = SBD Then S1 = SAC
                           If SAD = SBC Then S1 = SAD
                           Abb = Fuori90(A + B + C + D)
                           If(S1 <> Abb) And(SAC <> SAD) Then
                              Caso = Caso + 1
                              Casi = Casi + 1
                              Scrivi String(89,"*") & " Casi Totali " & FormattaStringa(Casi,"0000"),1,,,2
                              Scrivi String(80,"*") & " Estrazione " &(Es1) & " caso " & FormattaStringa(Caso,"0000"),1,,,1
                              Scrivi(" Estrazione n." & Format2(Es1) & " del " & DataEstrazione(Es1)),1,0
                              Scrivi "  " & SiglaRuota(R1) & " ",1,0
                              For P5 = 1 To 5
                                 E1 = Estratto(Es1,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(Es1) & " del " & DataEstrazione(Es1)),1,0
                              Scrivi "  " & SiglaRuota(R2) & " ",1,0
                              For P6 = 1 To 5
                                 E2 = Estratto(Es1,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 Space(24) & "Almeno un gruppo di somme uguali",1,,,2
                              Scrivi Space(7) & "Estratti " & Space(13) & "Somme " & Space(8) & " Somme",1
                              Scrivi Space(7) & "Evidenz. " & Space(12) & "Verticali" & Space(5),1,0
                              Scrivi "Diagonali",1
                              Scrivi Space(8) & Format2(A) & " " & Format2(B) & Space(18) & Format2(SAC),1,0
                              Scrivi Space(12) & Format2(SAD),1
                              Scrivi Space(8) & Format2(C) & " " & Format2(D) & Space(18) & Format2(SBD),1,0
                              Scrivi Space(12) & Format2(SBC),1
                              Scrivi
                              Scrivi Space(8) & Format2(A) & " + " & Format2(B) & " + " & Format2(C),1,0
                              Scrivi " + " & Format2(D) & " = " & Format2(Abb) & " <-- Abbinamento per Ambo ",1
                              Ruo(1) = R1
                              Ruo(2) = R2
                              Amba(1) = S1
                              ImpostaGiocata 1,Amba,Ruo,Po1,Clp
                              Ambo(1) = S1 : Ambo(2) = Abb
                              ImpostaGiocata 2,Ambo,Ruo,Po2,Clp
                              Gioca Es1
                           End If
                        End If
                     End If
                  End If
               Next
            Next
         Next
      Next
   Next
   ScriviResoconto
End Sub


Con filtro del numero uguale

Codice:
Option Explicit
Sub Main
   Dim FIn,Ini,A,B,C,D,Clp,Es1,Salvo50
   Dim R1,R2,P1,P2,P5,P6,E1,E2,Caso,Casi
   Dim SAC,SBD,SAD,SBC,S1,Abb
   Dim Amba(1),Ambo(2)
   Dim Ruo(2),Po1(1),Po2(2)
   FIn = EstrazioneFin
   Ini = CInt(InputBox("Inserisci l'estrazione che vuoi iniziare",Salvo50,9786))
   Clp = CInt(InputBox(" Per quanti colpi vuoi giocare?",Salvo50,5))
   Scrivi Space(12) & " Chiesto da Mariella Pepe - SCRIPT SALVO50               ",1
   Po1(1) = 1
   Po2(2) = 1
   For Es1 = Ini To FIn
      Messaggio Es1
      AvanzamentoElab Ini,FIn,Es1
      Caso = 0
      For R1 = 1 To 10
         For P1 = 1 To 4
            For P2 = P1 + 1 To 5
               A = CInt(Estratto(Es1,R1,P1))
               B = CInt(Estratto(Es1,R1,P2))
               For R2 = R1 + 1 To 12
                  If R2 = 11 Then R2 = 12
                  C = CInt(Estratto(Es1,R2,P1))
                  D = CInt(Estratto(Es1,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
                        SAC = Fuori90(A + C) : SBD = Fuori90(B + D) : SAD = Fuori90(A + D) : SBC = Fuori90(B + C)
                        If SAC = SBD Or SAD = SBC Then
                           If SAC = SBD Then S1 = SAC
                           If SAD = SBC Then S1 = SAD
                           Abb = Fuori90(A + B + C + D)
                           If(S1 <> Abb) And(SAC <> SAD) Then
                              If S1 = A Or S1 = B Or S1 = C Or S1 = D Then
                                 Caso = Caso + 1
                                 Casi = Casi + 1
                                 Scrivi String(89,"*") & " Casi Totali " & FormattaStringa(Casi,"0000"),1,,,2
                                 Scrivi String(80,"*") & " Estrazione " &(Es1) & " caso " & FormattaStringa(Caso,"0000"),1,,,1
                                 Scrivi(" Estrazione n." & Format2(Es1) & " del " & DataEstrazione(Es1)),1,0
                                 Scrivi "  " & SiglaRuota(R1) & " ",1,0
                                 For P5 = 1 To 5
                                    E1 = Estratto(Es1,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(Es1) & " del " & DataEstrazione(Es1)),1,0
                                 Scrivi "  " & SiglaRuota(R2) & " ",1,0
                                 For P6 = 1 To 5
                                    E2 = Estratto(Es1,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(24) & "Almeno un gruppo di somme uguali",1,,,2
                                 Scrivi Space(7) & "Estratti " & Space(13) & "Somme " & Space(8) & " Somme",1
                                 Scrivi Space(7) & "Evidenz. " & Space(12) & "Verticali" & Space(5),1,0
                                 Scrivi "Diagonali",1
                                 Scrivi Space(8) & Format2(A) & " " & Format2(B) & Space(18) & Format2(SAC),1,0
                                 Scrivi Space(12) & Format2(SAD),1
                                 Scrivi Space(8) & Format2(C) & " " & Format2(D) & Space(18) & Format2(SBD),1,0
                                 Scrivi Space(12) & Format2(SBC),1
                                 Scrivi
                                 Scrivi Space(8) & Format2(A) & " + " & Format2(B) & " + " & Format2(C),1,0
                                 Scrivi " + " & Format2(D) & " = " & Format2(Abb) & " <-- Abbinamento per Ambo ",1
                                 Ruo(1) = R1
                                 Ruo(2) = R2
                                 Amba(1) = S1
                                 ImpostaGiocata 1,Amba,Ruo,Po1,Clp
                                 Ambo(1) = S1 : Ambo(2) = Abb
                                 ImpostaGiocata 2,Ambo,Ruo,Po2,Clp
                                 Gioca Es1
                              End If
                           End If
                        End If
                     End If
                  End If
               Next
            Next
         Next
      Next
   Next
   ScriviResoconto
End Sub
 
Ultima modifica:

salvo50

Advanced Member >PLATINUM PLUS<
Per essere sicuro, non ho usato quello che ho io, ma ho preso i 2 script del post 13, a me funzionano tutti e due, non so cosa dirti, magari nel caricarlo ha perso qualcosa, prova a riprenderlo di nuovo.
 
Ultima modifica:

joe

Advanced Member >PLATINUM PLUS<
Per L8/LD

Scrivi può avere solo i primi due parametri (Grassetto/A Capo).

If ScriptInterrotto Then non può essere usata

Aanche ScegliRange è istruzione caratteristica di Spaziometria.

Dunque ho cancellato un pò di incompatibilità e dovrebbe girare.

... però ... NON HO CONTROLLATO.

Codice:
Option Explicit
Sub Main
   Dim FIn,Ini,A,B,C,D,Clp,Es1,Salvo50
   Dim R1,R2,P1,P2,P5,P6,E1,E2,Caso,Casi
   Dim SAC,SBD,SAD,SBC,S1,Abb
   Dim Amba(1),Ambo(2)
   Dim Ruo(2),Po1(1),Po2(2)
   FIn = EstrazioneFin
   Ini = CInt(InputBox("Inserisci l'estrazione che vuoi iniziare",Salvo50,9786))
   Clp = CInt(InputBox(" Per quanti colpi vuoi giocare?",Salvo50,5))
   'Call ScegliRange(Ini,FIn,Ini,FIn)
   Scrivi Space(12) & " Chiesto da Mariella Pepe - SCRIPT SALVO50               " ,1',,4,,3,,1
   Po1(1) = 1
   Po2(2) = 1
   For Es1 = Ini To FIn
      Messaggio Es1
      AvanzamentoElab Ini,FIn,Es1
      Caso = 0
      For R1 = 1 To 10
         For P1 = 1 To 4
            For P2 = P1 + 1 To 5
               A = CInt(Estratto(Es1,R1,P1))
               B = CInt(Estratto(Es1,R1,P2))
               For R2 = R1 + 1 To 12
                  If R2 = 11 Then R2 = 12
                  C = CInt(Estratto(Es1,R2,P1))
                  D = CInt(Estratto(Es1,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
                        SAC = Fuori90(A + C) : SBD = Fuori90(B + D) : SAD = Fuori90(A + D) : SBC = Fuori90(B + C)
                        If SAC = SBD Or SAD = SBC Then
                           If SAC = SBD Then S1 = SAC
                           If SAD = SBC Then S1 = SAD
                           Abb = Fuori90(A + B + C + D)
                           If(S1 <> Abb) And(SAC <> SAD) Then
                              If S1 = A Or S1 = B Or S1 = C Or S1 = D Then
                                 Caso = Caso + 1
                                 Casi = Casi + 1
                                 Scrivi String(89,"*") & " Casi Totali " & FormattaStringa(Casi,"0000"),1
                                 Scrivi String(80,"*") & " Estrazione " &(Es1) & " caso " & FormattaStringa(Caso,"0000"),1
                                 Scrivi(" Estrazione n." & Format2(Es1) & " del " & DataEstrazione(Es1)),1,0
                                 Scrivi "  " & SiglaRuota(R1) & " ",1,0
                                 For P5 = 1 To 5
                                    E1 = Estratto(Es1,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(Es1) & " del " & DataEstrazione(Es1)),1,0
                                 Scrivi "  " & SiglaRuota(R2) & " ",1,0
                                 For P6 = 1 To 5
                                    E2 = Estratto(Es1,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(24) & "Almeno un gruppo di somme uguali",1
                                 Scrivi Space(7) & "Estratti " & Space(13) & "Somme " & Space(8) & " Somme",1
                                 Scrivi Space(7) & "Evidenz. " & Space(12) & "Verticali" & Space(5),1,0
                                 Scrivi "Diagonali",1
                                 Scrivi Space(8) & Format2(A) & " " & Format2(B) & Space(18) & Format2(SAC),1,0
                                 Scrivi Space(12) & Format2(SAD),1
                                 Scrivi Space(8) & Format2(C) & " " & Format2(D) & Space(18) & Format2(SBD),1,0
                                 Scrivi Space(12) & Format2(SBC),1
                                 Scrivi
                                 Scrivi Space(8) & Format2(A) & " + " & Format2(B) & " + " & Format2(C),1,0
                                 Scrivi " + " & Format2(D) & " = " & Format2(Abb) & " <-- Abbinamento per Ambo ",1
                                 Ruo(1) = R1
                                 Ruo(2) = R2
                                 Amba(1) = S1
                                 ImpostaGiocata 1,Amba,Ruo,Po1,Clp
                                 Ambo(1) = S1 : Ambo(2) = Abb
                                 ImpostaGiocata 2,Ambo,Ruo,Po2,Clp
                                 Gioca Es1
                              End If
                           End If
                        End If
                     End If
                  End If
                  'If ScriptInterrotto Then Exit Sub
               Next
            Next
         Next
      Next
     
   Next
   ScriviResoconto
End Sub
 

mariella pepe

Junior Member
Per L8/LD

Scrivi può avere solo i primi due parametri (Grassetto/A Capo).

If ScriptInterrotto Then non può essere usata

Aanche ScegliRange è istruzione caratteristica di Spaziometria.

Dunque ho cancellato un pò di incompatibilità e dovrebbe girare.

... però ... NON HO CONTROLLATO.

Codice:
Option Explicit
Sub Main
   Dim FIn,Ini,A,B,C,D,Clp,Es1,Salvo50
   Dim R1,R2,P1,P2,P5,P6,E1,E2,Caso,Casi
   Dim SAC,SBD,SAD,SBC,S1,Abb
   Dim Amba(1),Ambo(2)
   Dim Ruo(2),Po1(1),Po2(2)
   FIn = EstrazioneFin
   Ini = CInt(InputBox("Inserisci l'estrazione che vuoi iniziare",Salvo50,9786))
   Clp = CInt(InputBox(" Per quanti colpi vuoi giocare?",Salvo50,5))
   'Call ScegliRange(Ini,FIn,Ini,FIn)
   Scrivi Space(12) & " Chiesto da Mariella Pepe - SCRIPT SALVO50               " ,1',,4,,3,,1
   Po1(1) = 1
   Po2(2) = 1
   For Es1 = Ini To FIn
      Messaggio Es1
      AvanzamentoElab Ini,FIn,Es1
      Caso = 0
      For R1 = 1 To 10
         For P1 = 1 To 4
            For P2 = P1 + 1 To 5
               A = CInt(Estratto(Es1,R1,P1))
               B = CInt(Estratto(Es1,R1,P2))
               For R2 = R1 + 1 To 12
                  If R2 = 11 Then R2 = 12
                  C = CInt(Estratto(Es1,R2,P1))
                  D = CInt(Estratto(Es1,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
                        SAC = Fuori90(A + C) : SBD = Fuori90(B + D) : SAD = Fuori90(A + D) : SBC = Fuori90(B + C)
                        If SAC = SBD Or SAD = SBC Then
                           If SAC = SBD Then S1 = SAC
                           If SAD = SBC Then S1 = SAD
                           Abb = Fuori90(A + B + C + D)
                           If(S1 <> Abb) And(SAC <> SAD) Then
                              If S1 = A Or S1 = B Or S1 = C Or S1 = D Then
                                 Caso = Caso + 1
                                 Casi = Casi + 1
                                 Scrivi String(89,"*") & " Casi Totali " & FormattaStringa(Casi,"0000"),1
                                 Scrivi String(80,"*") & " Estrazione " &(Es1) & " caso " & FormattaStringa(Caso,"0000"),1
                                 Scrivi(" Estrazione n." & Format2(Es1) & " del " & DataEstrazione(Es1)),1,0
                                 Scrivi "  " & SiglaRuota(R1) & " ",1,0
                                 For P5 = 1 To 5
                                    E1 = Estratto(Es1,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(Es1) & " del " & DataEstrazione(Es1)),1,0
                                 Scrivi "  " & SiglaRuota(R2) & " ",1,0
                                 For P6 = 1 To 5
                                    E2 = Estratto(Es1,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(24) & "Almeno un gruppo di somme uguali",1
                                 Scrivi Space(7) & "Estratti " & Space(13) & "Somme " & Space(8) & " Somme",1
                                 Scrivi Space(7) & "Evidenz. " & Space(12) & "Verticali" & Space(5),1,0
                                 Scrivi "Diagonali",1
                                 Scrivi Space(8) & Format2(A) & " " & Format2(B) & Space(18) & Format2(SAC),1,0
                                 Scrivi Space(12) & Format2(SAD),1
                                 Scrivi Space(8) & Format2(C) & " " & Format2(D) & Space(18) & Format2(SBD),1,0
                                 Scrivi Space(12) & Format2(SBC),1
                                 Scrivi
                                 Scrivi Space(8) & Format2(A) & " + " & Format2(B) & " + " & Format2(C),1,0
                                 Scrivi " + " & Format2(D) & " = " & Format2(Abb) & " <-- Abbinamento per Ambo ",1
                                 Ruo(1) = R1
                                 Ruo(2) = R2
                                 Amba(1) = S1
                                 ImpostaGiocata 1,Amba,Ruo,Po1,Clp
                                 Ambo(1) = S1 : Ambo(2) = Abb
                                 ImpostaGiocata 2,Ambo,Ruo,Po2,Clp
                                 Gioca Es1
                              End If
                           End If
                        End If
                     End If
                  End If
                  'If ScriptInterrotto Then Exit Sub
               Next
            Next
         Next
      Next
    
   Next
   ScriviResoconto
End Sub
Grazie Joe, funziona benissimo. Per piacere puoi fare anche la versione senza il filtro del numero ripetuto?
Per L8/LD

Scrivi può avere solo i primi due parametri (Grassetto/A Capo).

If ScriptInterrotto Then non può essere usata

Aanche ScegliRange è istruzione caratteristica di Spaziometria.

Dunque ho cancellato un pò di incompatibilità e dovrebbe girare.

... però ... NON HO CONTROLLATO.

Codice:
Option Explicit
Sub Main
   Dim FIn,Ini,A,B,C,D,Clp,Es1,Salvo50
   Dim R1,R2,P1,P2,P5,P6,E1,E2,Caso,Casi
   Dim SAC,SBD,SAD,SBC,S1,Abb
   Dim Amba(1),Ambo(2)
   Dim Ruo(2),Po1(1),Po2(2)
   FIn = EstrazioneFin
   Ini = CInt(InputBox("Inserisci l'estrazione che vuoi iniziare",Salvo50,9786))
   Clp = CInt(InputBox(" Per quanti colpi vuoi giocare?",Salvo50,5))
   'Call ScegliRange(Ini,FIn,Ini,FIn)
   Scrivi Space(12) & " Chiesto da Mariella Pepe - SCRIPT SALVO50               " ,1',,4,,3,,1
   Po1(1) = 1
   Po2(2) = 1
   For Es1 = Ini To FIn
      Messaggio Es1
      AvanzamentoElab Ini,FIn,Es1
      Caso = 0
      For R1 = 1 To 10
         For P1 = 1 To 4
            For P2 = P1 + 1 To 5
               A = CInt(Estratto(Es1,R1,P1))
               B = CInt(Estratto(Es1,R1,P2))
               For R2 = R1 + 1 To 12
                  If R2 = 11 Then R2 = 12
                  C = CInt(Estratto(Es1,R2,P1))
                  D = CInt(Estratto(Es1,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
                        SAC = Fuori90(A + C) : SBD = Fuori90(B + D) : SAD = Fuori90(A + D) : SBC = Fuori90(B + C)
                        If SAC = SBD Or SAD = SBC Then
                           If SAC = SBD Then S1 = SAC
                           If SAD = SBC Then S1 = SAD
                           Abb = Fuori90(A + B + C + D)
                           If(S1 <> Abb) And(SAC <> SAD) Then
                              If S1 = A Or S1 = B Or S1 = C Or S1 = D Then
                                 Caso = Caso + 1
                                 Casi = Casi + 1
                                 Scrivi String(89,"*") & " Casi Totali " & FormattaStringa(Casi,"0000"),1
                                 Scrivi String(80,"*") & " Estrazione " &(Es1) & " caso " & FormattaStringa(Caso,"0000"),1
                                 Scrivi(" Estrazione n." & Format2(Es1) & " del " & DataEstrazione(Es1)),1,0
                                 Scrivi "  " & SiglaRuota(R1) & " ",1,0
                                 For P5 = 1 To 5
                                    E1 = Estratto(Es1,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(Es1) & " del " & DataEstrazione(Es1)),1,0
                                 Scrivi "  " & SiglaRuota(R2) & " ",1,0
                                 For P6 = 1 To 5
                                    E2 = Estratto(Es1,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(24) & "Almeno un gruppo di somme uguali",1
                                 Scrivi Space(7) & "Estratti " & Space(13) & "Somme " & Space(8) & " Somme",1
                                 Scrivi Space(7) & "Evidenz. " & Space(12) & "Verticali" & Space(5),1,0
                                 Scrivi "Diagonali",1
                                 Scrivi Space(8) & Format2(A) & " " & Format2(B) & Space(18) & Format2(SAC),1,0
                                 Scrivi Space(12) & Format2(SAD),1
                                 Scrivi Space(8) & Format2(C) & " " & Format2(D) & Space(18) & Format2(SBD),1,0
                                 Scrivi Space(12) & Format2(SBC),1
                                 Scrivi
                                 Scrivi Space(8) & Format2(A) & " + " & Format2(B) & " + " & Format2(C),1,0
                                 Scrivi " + " & Format2(D) & " = " & Format2(Abb) & " <-- Abbinamento per Ambo ",1
                                 Ruo(1) = R1
                                 Ruo(2) = R2
                                 Amba(1) = S1
                                 ImpostaGiocata 1,Amba,Ruo,Po1,Clp
                                 Ambo(1) = S1 : Ambo(2) = Abb
                                 ImpostaGiocata 2,Ambo,Ruo,Po2,Clp
                                 Gioca Es1
                              End If
                           End If
                        End If
                     End If
                  End If
                  'If ScriptInterrotto Then Exit Sub
               Next
            Next
         Next
      Next
    
   Next
   ScriviResoconto
End Sub
 

salvo50

Advanced Member >PLATINUM PLUS<
Ciao Joe grazie, queste diversità non le conoscevo, comunque con l'ultima anomalia segnalata da Mariella, ho pensato che era un errore di copia e incolla perchè Mariella aveva detto che (nel post 12) stava usando Spaziometria.
 

salvo50

Advanced Member >PLATINUM PLUS<
Mariella, ho modificato tutti e 3 gli script con le ultime indicazioni di Joe, vedi come vanno
 

Ultima estrazione Lotto

  • Estrazione del lotto
    venerdì 26 aprile 2024
    Bari
    65
    67
    84
    22
    77
    Cagliari
    38
    09
    83
    18
    20
    Firenze
    76
    24
    78
    30
    40
    Genova
    50
    56
    61
    90
    57
    Milano
    87
    21
    15
    12
    79
    Napoli
    13
    66
    86
    25
    49
    Palermo
    72
    60
    68
    74
    09
    Roma
    23
    15
    43
    07
    75
    Torino
    82
    79
    31
    41
    64
    Venezia
    66
    89
    18
    80
    41
    Nazionale
    04
    24
    10
    69
    73
    Estrazione Simbolotto
    Genova
    33
    03
    16
    35
    32
Alto