'PROGETTO - PROCEDIMENTO FERCAT N1 - BY FABARRI
'SCRIPT   - BY SALVO50
'Le seconde somme calcolate con il Fuori90
Option Explicit
Sub Main
    Dim es,r1,r2,ok,somma1,somma2,p1,p2,p3
    Dim estra,estrb,estrc,caso,casi
    Dim Ini,fin,esq,clp1,clp2,col,esqcol,idestr
    Dim posta(1),ruote(2),poste(2)
    Dim dca,dcb,dcc,cda,cdb,Cdc
    Dim num1(1),num2(2)
    Ini = EstrazioneFin
    fin = EstrazioneFin
    esq = InputBox("Inserisci l'estrazione che vuoi iniziare",idestr,9300)'estrazione 5094 esempio n1, 5274 esempio n2 nell'articolo
    clp1 = InputBox("Per quanti colpi vuoi giocare l'ambata?",,5)
    clp2 = InputBox("Per quanti colpi vuoi giocare l'ambo?",,10)
    col = CInt(InputBox(" Quante estrazioni vuoi controllare ",,200))
    posta(1) = 1
    poste(2) = 1
    esqcol = esq + col
    If esqcol > fin Then esqcol = fin
    For es = esq To esqcol
        Messaggio es
        AvanzamentoElab esq,esqcol,es
        caso = 0
        For r1 = 1 To 10
            For p1 = 1 To 4
                p2 = p1 + 1
                estra = Estratto(es,r1,p1)
                estrb = Estratto(es,r1,p2)
                For r2 = 1 To 10
                    If r1 <> r2 Then
                        For p3 = 1 To 5
                            estrc = Estratto(es,r2,p3)
                            If p3 = p1 - 1 Or p3 = p2 + 1 Then
                                dca = Decina(estra) : dcb = Decina(estrb) : dcc = Decina(estrc)
                                cda = Cadenza(estra) : cdb = Cadenza(estrb) : Cdc = Cadenza(estrc)
                                ok = 0
                                If(p3 < p1) And((estrb > estra) And(estrb > estrc)) Or((estra > estrb) And(estra > estrc))_
                                    Or((estrc > estra) And(estrc > estrb)) _
                                    Or(p3 > p2) And((estrc > estrb) And(estrc > estra)) Or((estrb > estra) And(estrb > estrc)) _
                                    Or((estra > estrb) And(estra > estrc)) Then
                                    If estra =(estrb + estrc) And estra < 91 And dca = dcb + dcc And cda = cdb + Cdc Then
                                        somma1 = estra
                                        If estrb < estrc Then
                                            somma2 = Fuori90(estra + estrb)
                                        Else
                                            somma2 = Fuori90(estra + estrc)
                                        End If
                                        ok = 1
                                    End If
                                    If estrb =(estra + estrc) And estrb < 91 And dcb = dca + dcc And cdb = cda + Cdc Then
                                        somma1 = estrb
                                        If estra < estrc Then
                                            somma2 = Fuori90(estrb + estra)
                                        Else
                                            somma2 = Fuori90(estrb + estrc)
                                        End If
                                        ok = 1
                                    End If
                                    If estrc =(estra + estrb) And estrc < 91 And dcc = dca + dcb And Cdc = cda + cdb Then
                                        somma1 = estrc
                                        If estra < estrb Then
                                            somma2 = Fuori90(estra + estrc)
                                        Else
                                            somma2 = Fuori90(estrb + estrc)
                                        End If
                                        ok = 1
                                    End If
                                    If ok = 1 Then
                                        casi = casi + 1
                                        caso = caso + 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
                                        ColoreTesto 1
                                        Scrivi(" Estrazione n." & Format2(es) & " del " & DataEstrazione(es)),0,0
                                        Scrivi "  " & Left(NomeRuota(r1),2) & " " & StringaEstratti(es,r1),2
                                        ColoreTesto 2
                                        Scrivi(" Estrazione n." & Format2(es) & " del " & DataEstrazione(es)),0,0
                                        Scrivi "  " & Left(NomeRuota(r2),2) & " " & StringaEstratti(es,r2),2
                                        ColoreTesto 0
                                        Scrivi
                                        If p3 > p2 Then
                                            Scrivi Space(20) & " Posizione       ",1,0
                                            ColoreTesto 1
                                            Scrivi p1 & Space(3) & p2,1,0
                                            ColoreTesto 2
                                            Scrivi Space(3) &(p3),1
                                            ColoreTesto 0
                                            Scrivi Space(20) & " Ruota          ",1,0
                                            ColoreTesto 1
                                            Scrivi SiglaRuota(r1) & Space(2) & SiglaRuota(r1),1,0
                                            ColoreTesto 2
                                            Scrivi Space(2) & SiglaRuota(r2),1
                                            ColoreTesto 1
                                            Scrivi Space(36) & Format2(estra) & "  " & Format2(estrb),1,0
                                            ColoreTesto 2
                                            Scrivi "  " & Format2(estrc),1
                                            ColoreTesto 0
                                        Else
                                            If p3 < p1 Then
                                                Scrivi Space(20) & " Posizione       ",1,0
                                                ColoreTesto 2
                                                Scrivi p3 & Space(3),1,0
                                                ColoreTesto 1
                                                Scrivi p1 & Space(3) &(p2),1
                                                ColoreTesto 0
                                                Scrivi Space(20) & " Ruota          ",1,0
                                                ColoreTesto 2
                                                Scrivi SiglaRuota(r2) & Space(2),1,0
                                                ColoreTesto 1
                                                Scrivi SiglaRuota(r1) & Space(2) & SiglaRuota(r1),1
                                                ColoreTesto 2
                                                Scrivi Space(36) & Format2(estrc),1,0
                                                ColoreTesto 1
                                                Scrivi "  " & Format2(estra) & "  " & Format2(estrb),1
                                                ColoreTesto 0
                                            End If
                                        End If
                                        Scrivi
                                        Scrivi Space(19) & " SOMMA = " & Format2(somma1) & "        Ambata " & Format2(somma2),1
                                        Scrivi
                                        ruote(1) = r1
                                        ruote(2) = r2
                                        num1(1) = somma2
                                        ImpostaGiocata 1,num1,ruote,posta,clp1,1
                                        num2(1) = somma2
                                        num2(2) = estra
                                        ImpostaGiocata 2,num2,ruote,poste,clp2,2
                                        num2(2) = estrb
                                        ImpostaGiocata 3,num2,ruote,poste,clp2,2
                                        num2(2) = estrc
                                        ImpostaGiocata 4,num2,ruote,poste,clp2,2
                                        Gioca es
                                    End If
                                End If
                            End If
                        Next
                    End If
                Next
            Next
        Next
    Next
    ScriviResoconto
    Scrivi Space(54) & "PROGETTO - PROCEDIMENTO FERCAT N1 - BY FABARRI"
    Scrivi Space(54) & "SCRIPT - BY SALVO50"
End Sub