C
codicebinario
Guest
.........ma non gira su spazio......e' possibile adattarlo?
Grazie a chiunque vorra cimentarsi....si tratta della BASEF (anche SCARAVETTI ci si prodigo'...)
Sub main()
Dim nu(1)
Dim posta(1), poste(2), ruote(5), numerissimi(10), nlot(20)
Dim ruotes1(1), ruotes2(1), ruotes3(1), ruotes4(1), ruotes5(1)
Dim numeri(90), pc(25), nnnn(1), nnn(1), nnl(1), pp(1)
Dim ruota1(1), ruota2(1), ruota3(1), ruota4(1), ruota5(1)
Dim lotr1(10), lotr2(10), lotr3(10), lotr4(10), lotr5(10)
Dim nr1(1), nr2(1), nr3(1), nr4(1), nr5(1)
Dim v(3), ritardo(1), crmass(5)
Dim nnc(1), nncp(1), amborit(2), tt(1), postes(2)
Dim nmed1(10), nmed2(10), nmed3(10), nmed4(10), nmed5(10)
ini = EstrazioneFin-10
fin = EstrazioneFin
posta(1) =1
poste(1) = 1
poste(2) = 1
postes(1)=0
postes(2)=1
nec=4 'numero estrazioni di controllo
piuvolte=3
colpi=12
mmediasup=23
For est = ini To fin
AvanzamentoElab ini, fin, est
For rt1 = 1 To 1
ruote(1) = rt1
ruota1(1)=rt1
nr1(1)=PiuRitardatario (est,rt1)
cr1=SerieRitardo(est-250,est,nr1,ruota1,1)
For rt2 = rt1 + 1 To 2
ruote(2) = rt2
ruota2(1)=rt2
nr2(1)=PiuRitardatario (est,rt2)
cr2=SerieRitardo(est-250,est,nr2,ruota2,1)
For rt3 = rt2 + 1 To 3
ruote(3) = rt3
ruota3(1)=rt3
nr3(1)=PiuRitardatario (est,rt3)
cr3=SerieRitardo(est-250,est,nr3,ruota3,1)
For rt4 = rt3 + 1 To 4
ruote(4) = rt4
ruota4(1)=rt4
nr4(1)=PiuRitardatario (est,rt4)
cr4=SerieRitardo(est-250,est,nr4,ruota4,1)
For rt5 = rt4 + 1 To 5
ruote(5) = rt5
ruota5(1)=rt5
nr5(1)=PiuRitardatario (est,rt5)
cr5=SerieRitardo(est-250,est,nr5,ruota5,1)
crmass(1)=cr1
crmass(2)=cr2
crmass(3)=cr3
crmass(4)=cr4
crmass(5)=cr5
OrdinaMatrice crmass,-1
crmas=crmass(1)
For n = 1 To 90 step 1
nu(1)=n
If SerieFreq(est-(nec-1),est,nu,ruote,1) => piuvolte Then 'condizione
If SerieRitardo(est-crmas,est,nu,ruote,1) <=40 Then
If SerieFreq(est-crmas,est,nu,ruote,1) <= 40 Then
numeri=CInt(nu(1))
End If
End If
End If
Next
OrdinaMatrice numeri,-1
EliminaRipetuti numeri
For k = 1 To 10
If numeri(k)>0 Then
numerissimi(k) = CInt(numeri(k))
End If
Next
contanumeri=0
For k = 1 To 20
If numeri(k)>0 Then
nlot(k) = CInt(numeri(k))
contanumeri=contanumeri+1
End If
Next
If contanumeri => 2 And contanumeri <= 10 Then
Scrivi DataEstrazione(est)&" Analisi Frequenza su "&NomeRuota(rt1)&" "&NomeRuota(rt2)&" "&NomeRuota(rt3)&" "&NomeRuota(rt4)&" "&NomeRuota(rt5)
Scrivi
riga=""
presr=0
For e=est-(nec-1) To est step 1
For rr=rt1 To rt5 step 1
For ppp=1 To 5
nn = Estratto(e, rr, ppp)
riga=riga+FormatSpace(nn,3,True)
If nn = numerissimi(1) Or nn = numerissimi(2) Or nn = numerissimi(3) Or nn = numerissimi(4) Or nn = numerissimi(5) Or nn = numerissimi(6) Or nn = numerissimi(7) Or nn = numerissimi(8) Or nn = numerissimi(9) Or nn = numerissimi(10) Then
presr = presr + 1
End If
Next
If rr<rt5 Then
riga=riga+" - "
End If
Next
Scrivi riga+" pres. di riga "+FormatSpace(presr,3,True)
riga=""
presr=0
Next
Scrivi
rigacol=""
presc=0
tot=0
For rr=rt1 To rt5 step 1
For ppp=1 To 5 step 1
For e=est-(nec-1) To est step 1
nn = Estratto(e, rr, ppp)
If nn = numerissimi(1) Or nn = numerissimi(2) Or nn = numerissimi(3) Or nn = numerissimi(4) Or nn = numerissimi(5) Or nn = numerissimi(6) Or nn = numerissimi(7) Or nn = numerissimi(8) Or nn = numerissimi(9) Or nn = numerissimi(10) Then
presc = presc + 1
tot=tot+1
End If
Next
rigacol=rigacol+FormatSpace(presc,3,True)
presc=0
If ppp=5 And rr<rt5 Then
rigacol=rigacol+" - "
End If
Next
Next
Scrivi rigacol++" pres. di col. "+FormatSpace(tot,3,True)+" tot"
Scrivi
rigaruota1=""
ruota1(1)=rt1
For k = 1 To 10
If numerissimi(k)>0 Then
nnnn(1)=numerissimi(k)
If SerieFreq(est-(nec-1),est,nnnn,ruota1,1) > 0 Then
rigaruota1=rigaruota1&"."&nnnn(1)
lotr1(k)=numerissimi(k)
End If
End If
Next
Scrivi FormatSpace(NomeRuota(rt1),9)+" "+rigaruota1
rigaruota2=""
ruota2(1)=rt2
For k = 1 To 10
If numerissimi(k)>0 Then
nnnn(1)=numerissimi(k)
If SerieFreq(est-(nec-1),est,nnnn,ruota2,1) > 0 Then
rigaruota2=rigaruota2&"."&nnnn(1)
lotr2
Grazie a chiunque vorra cimentarsi....si tratta della BASEF (anche SCARAVETTI ci si prodigo'...)
Sub main()
Dim nu(1)
Dim posta(1), poste(2), ruote(5), numerissimi(10), nlot(20)
Dim ruotes1(1), ruotes2(1), ruotes3(1), ruotes4(1), ruotes5(1)
Dim numeri(90), pc(25), nnnn(1), nnn(1), nnl(1), pp(1)
Dim ruota1(1), ruota2(1), ruota3(1), ruota4(1), ruota5(1)
Dim lotr1(10), lotr2(10), lotr3(10), lotr4(10), lotr5(10)
Dim nr1(1), nr2(1), nr3(1), nr4(1), nr5(1)
Dim v(3), ritardo(1), crmass(5)
Dim nnc(1), nncp(1), amborit(2), tt(1), postes(2)
Dim nmed1(10), nmed2(10), nmed3(10), nmed4(10), nmed5(10)
ini = EstrazioneFin-10
fin = EstrazioneFin
posta(1) =1
poste(1) = 1
poste(2) = 1
postes(1)=0
postes(2)=1
nec=4 'numero estrazioni di controllo
piuvolte=3
colpi=12
mmediasup=23
For est = ini To fin
AvanzamentoElab ini, fin, est
For rt1 = 1 To 1
ruote(1) = rt1
ruota1(1)=rt1
nr1(1)=PiuRitardatario (est,rt1)
cr1=SerieRitardo(est-250,est,nr1,ruota1,1)
For rt2 = rt1 + 1 To 2
ruote(2) = rt2
ruota2(1)=rt2
nr2(1)=PiuRitardatario (est,rt2)
cr2=SerieRitardo(est-250,est,nr2,ruota2,1)
For rt3 = rt2 + 1 To 3
ruote(3) = rt3
ruota3(1)=rt3
nr3(1)=PiuRitardatario (est,rt3)
cr3=SerieRitardo(est-250,est,nr3,ruota3,1)
For rt4 = rt3 + 1 To 4
ruote(4) = rt4
ruota4(1)=rt4
nr4(1)=PiuRitardatario (est,rt4)
cr4=SerieRitardo(est-250,est,nr4,ruota4,1)
For rt5 = rt4 + 1 To 5
ruote(5) = rt5
ruota5(1)=rt5
nr5(1)=PiuRitardatario (est,rt5)
cr5=SerieRitardo(est-250,est,nr5,ruota5,1)
crmass(1)=cr1
crmass(2)=cr2
crmass(3)=cr3
crmass(4)=cr4
crmass(5)=cr5
OrdinaMatrice crmass,-1
crmas=crmass(1)
For n = 1 To 90 step 1
nu(1)=n
If SerieFreq(est-(nec-1),est,nu,ruote,1) => piuvolte Then 'condizione
If SerieRitardo(est-crmas,est,nu,ruote,1) <=40 Then
If SerieFreq(est-crmas,est,nu,ruote,1) <= 40 Then
numeri=CInt(nu(1))
End If
End If
End If
Next
OrdinaMatrice numeri,-1
EliminaRipetuti numeri
For k = 1 To 10
If numeri(k)>0 Then
numerissimi(k) = CInt(numeri(k))
End If
Next
contanumeri=0
For k = 1 To 20
If numeri(k)>0 Then
nlot(k) = CInt(numeri(k))
contanumeri=contanumeri+1
End If
Next
If contanumeri => 2 And contanumeri <= 10 Then
Scrivi DataEstrazione(est)&" Analisi Frequenza su "&NomeRuota(rt1)&" "&NomeRuota(rt2)&" "&NomeRuota(rt3)&" "&NomeRuota(rt4)&" "&NomeRuota(rt5)
Scrivi
riga=""
presr=0
For e=est-(nec-1) To est step 1
For rr=rt1 To rt5 step 1
For ppp=1 To 5
nn = Estratto(e, rr, ppp)
riga=riga+FormatSpace(nn,3,True)
If nn = numerissimi(1) Or nn = numerissimi(2) Or nn = numerissimi(3) Or nn = numerissimi(4) Or nn = numerissimi(5) Or nn = numerissimi(6) Or nn = numerissimi(7) Or nn = numerissimi(8) Or nn = numerissimi(9) Or nn = numerissimi(10) Then
presr = presr + 1
End If
Next
If rr<rt5 Then
riga=riga+" - "
End If
Next
Scrivi riga+" pres. di riga "+FormatSpace(presr,3,True)
riga=""
presr=0
Next
Scrivi
rigacol=""
presc=0
tot=0
For rr=rt1 To rt5 step 1
For ppp=1 To 5 step 1
For e=est-(nec-1) To est step 1
nn = Estratto(e, rr, ppp)
If nn = numerissimi(1) Or nn = numerissimi(2) Or nn = numerissimi(3) Or nn = numerissimi(4) Or nn = numerissimi(5) Or nn = numerissimi(6) Or nn = numerissimi(7) Or nn = numerissimi(8) Or nn = numerissimi(9) Or nn = numerissimi(10) Then
presc = presc + 1
tot=tot+1
End If
Next
rigacol=rigacol+FormatSpace(presc,3,True)
presc=0
If ppp=5 And rr<rt5 Then
rigacol=rigacol+" - "
End If
Next
Next
Scrivi rigacol++" pres. di col. "+FormatSpace(tot,3,True)+" tot"
Scrivi
rigaruota1=""
ruota1(1)=rt1
For k = 1 To 10
If numerissimi(k)>0 Then
nnnn(1)=numerissimi(k)
If SerieFreq(est-(nec-1),est,nnnn,ruota1,1) > 0 Then
rigaruota1=rigaruota1&"."&nnnn(1)
lotr1(k)=numerissimi(k)
End If
End If
Next
Scrivi FormatSpace(NomeRuota(rt1),9)+" "+rigaruota1
rigaruota2=""
ruota2(1)=rt2
For k = 1 To 10
If numerissimi(k)>0 Then
nnnn(1)=numerissimi(k)
If SerieFreq(est-(nec-1),est,nnnn,ruota2,1) > 0 Then
rigaruota2=rigaruota2&"."&nnnn(1)
lotr2