filippok9
Member
Voglio mettere a disposizione degli amici del forum secondo me un buon metodo però necessita di qualche correzione, sul programma spaziometria da errore, io non sono capace di modificarlo al momento e un mondo nuovo per me, ripasso a chi è capace.
Saluti Filippo
Spero di aver fatto cosa gradita
Ecco lo script doppia spia
Const COLPI=12
Public Ruota(2)
Public Numeri(90)
Public GlobalFreq(90)
Public Ambi(90,90)
Public TotCasi, CasiNeg
Dim varList()
Dim varData()
Dim varRuote1()
Dim varRuote2()
Public StatAmbi(20), StatAmbiTutte(20), StatAmbate(20)
Function Isotopo(Estrazione, video)
'trova numero Isotopo usciTo soltanTo su due ruote e restituisce il numero
Isotopo = 0
For b = 1 To 5
For r1 = 1 To 9
num1 = Estratto(Estrazione, r1, b)
For r2 = r1 + 1 To 10
num2 = Estratto(Estrazione, r2, b)
If num1 = num2 Then
trovati = 0
For c = 1 To 10
If estratto(Estrazione, c, b) = num1 Then trovati = trovati + 1
Next
If trovati = 2 Then
If video = 1 Then
TextOut "NUMERO SPIA " & num1 & Left(NomeRuota(r1), 2) & "," & Left(NomeRuota(r2), 2) & " (" & DataEstrazione(Estrazione) & ")"
End If
Isotopo = num1
Exit Function
End If
End If
Next
Next
Next
End Function
Function NumSpiaIso(Estrazione, numero)
'controlla se il numero spia è Isotopo e restituisce le due ruote
NumSpiaIso = 0
Ruota(1) = 0
Ruota(2) = 0
For b = 1 To 5
For r1 = 1 To 9
num1=Estratto(Estrazione, r1, b)
For r2 = r1 + 1 To 10
num2 = Estratto(Estrazione, r2, b)
If num1 = num2 Then
trovati = 0
For c = 1 To 10
If Estratto(Estrazione, c, b) = num1 Then trovati = trovati + 1
Next
If trovati = 2 And num1 = numero Then
TotCasi = TotCasi + 1
ReDim Preserve varList(TotCasi)
ReDim Preserve varData(TotCasi)
ReDim Preserve varRuote1(TotCasi)
ReDim Preserve varRuote2(TotCasi)
varRuote1(TotCasi) = r1
varRuote2(TotCasi) = r2
varData(TotCasi) = Estrazione
varList(TotCasi) = DataEstrazione(Estrazione) & ": "
varList(TotCasi) = varList(totcasi) & "[" & Left(NomeRuota(r1), 2) & "-" & Left(NomeRuota(r2), 2) & "] "
NumSpiaIso = num1
Ruota(1) = r1
Ruota(2) = r2
Exit Function
End If
End If
Next
Next
Next
End Function
Function PiuFrequenti(inizio)
Dim totfreq(90)
For a = inizio To inizio + (colpi-1)
For b = 1 To 5
num =Estratto(a, ruota(1), b)
totfreq(num) = totfreq(num) + 1
num = Estratto(a, ruota(2), b)
totfreq(num) = totfreq(num) + 1
Next
Next
For c1 = 1 To 90
If totfreq(c1) > 0 Then numeri(c1) = numeri(c1) + 1
GlobalFreq(c1) = GlobalFreq(c1) + totfreq(c1)
Next
End Function
Function FreqAmbi(inizio)
For a = inizio To inizio + (colpi-1)
For b =1 To 5
num1 = Estratto(a, ruota(1), b)
For c =1 To 5
num2 = Estratto(a, ruota(1), c)
Ambi(num1, num2) = Ambi(num1,num2) + 1
Next
Next
For b =1 To 5
num1 = Estratto(a, ruota(2), b)
For c = 1 To 5
num2 = Estratto(a, ruota(2), c)
Ambi(num1, num2) = Ambi(num1, num2) + 1
Next
Next
Next
End Function
Function AmbateUscite(inizio, condizione, num)
Dim a, b, numest1, numest2
AmbateUscite = 0
For a = inizio To inizio + (colpi-1)
For b = 1 To 5
numest1 = Estratto(a, varRuote1(condizione), b)
numest2 = Estratto(a, varRuote2(condizione), b)
If num = numest1 Then
TextOut "Ambata " & num & " " & Left(NomeRuota(varRuote1(condizione)),2) & " (" & a - inizio + 1 & "ºc)"
AmbateUscite = AmbateUscite + 1
StatAmbate(a-inizio+1) = StatAmbate(a-inizio+1) + 1
End If
If num = numest2 Then
TextOut "Ambata " & num & " " & Left(NomeRuota(varRuote2(condizione)),2) & " (" & a - inizio + 1 & "ºc)"
AmbateUscite = AmbateUscite + 1
StatAmbate(a-inizio+1) = StatAmbate(a-inizio+1) + 1
End If
Next
Next
If AmbateUscite = 0 Then
TextOut "Negativo"
CasiNeg = CasiNeg + 1
End If
End Function
Function AmbiUsciti(inizio, condizione, num1, num2)
Dim a, b, numest1, numest2, esatti, esatti2
AmbiUsciti = 0
For a = inizio To inizio + (colpi-1)
esatti = 0
esatti2 = 0
For b = 1 To 5
numest1 = Estratto(a, varRuote1(condizione), b)
numest2 = Estratto(a, varRuote2(condizione), b)
If num1 = numest1 Or num2 = numest1 Then esatti = esatti + 1
If n
Saluti Filippo
Spero di aver fatto cosa gradita
Ecco lo script doppia spia
Const COLPI=12
Public Ruota(2)
Public Numeri(90)
Public GlobalFreq(90)
Public Ambi(90,90)
Public TotCasi, CasiNeg
Dim varList()
Dim varData()
Dim varRuote1()
Dim varRuote2()
Public StatAmbi(20), StatAmbiTutte(20), StatAmbate(20)
Function Isotopo(Estrazione, video)
'trova numero Isotopo usciTo soltanTo su due ruote e restituisce il numero
Isotopo = 0
For b = 1 To 5
For r1 = 1 To 9
num1 = Estratto(Estrazione, r1, b)
For r2 = r1 + 1 To 10
num2 = Estratto(Estrazione, r2, b)
If num1 = num2 Then
trovati = 0
For c = 1 To 10
If estratto(Estrazione, c, b) = num1 Then trovati = trovati + 1
Next
If trovati = 2 Then
If video = 1 Then
TextOut "NUMERO SPIA " & num1 & Left(NomeRuota(r1), 2) & "," & Left(NomeRuota(r2), 2) & " (" & DataEstrazione(Estrazione) & ")"
End If
Isotopo = num1
Exit Function
End If
End If
Next
Next
Next
End Function
Function NumSpiaIso(Estrazione, numero)
'controlla se il numero spia è Isotopo e restituisce le due ruote
NumSpiaIso = 0
Ruota(1) = 0
Ruota(2) = 0
For b = 1 To 5
For r1 = 1 To 9
num1=Estratto(Estrazione, r1, b)
For r2 = r1 + 1 To 10
num2 = Estratto(Estrazione, r2, b)
If num1 = num2 Then
trovati = 0
For c = 1 To 10
If Estratto(Estrazione, c, b) = num1 Then trovati = trovati + 1
Next
If trovati = 2 And num1 = numero Then
TotCasi = TotCasi + 1
ReDim Preserve varList(TotCasi)
ReDim Preserve varData(TotCasi)
ReDim Preserve varRuote1(TotCasi)
ReDim Preserve varRuote2(TotCasi)
varRuote1(TotCasi) = r1
varRuote2(TotCasi) = r2
varData(TotCasi) = Estrazione
varList(TotCasi) = DataEstrazione(Estrazione) & ": "
varList(TotCasi) = varList(totcasi) & "[" & Left(NomeRuota(r1), 2) & "-" & Left(NomeRuota(r2), 2) & "] "
NumSpiaIso = num1
Ruota(1) = r1
Ruota(2) = r2
Exit Function
End If
End If
Next
Next
Next
End Function
Function PiuFrequenti(inizio)
Dim totfreq(90)
For a = inizio To inizio + (colpi-1)
For b = 1 To 5
num =Estratto(a, ruota(1), b)
totfreq(num) = totfreq(num) + 1
num = Estratto(a, ruota(2), b)
totfreq(num) = totfreq(num) + 1
Next
Next
For c1 = 1 To 90
If totfreq(c1) > 0 Then numeri(c1) = numeri(c1) + 1
GlobalFreq(c1) = GlobalFreq(c1) + totfreq(c1)
Next
End Function
Function FreqAmbi(inizio)
For a = inizio To inizio + (colpi-1)
For b =1 To 5
num1 = Estratto(a, ruota(1), b)
For c =1 To 5
num2 = Estratto(a, ruota(1), c)
Ambi(num1, num2) = Ambi(num1,num2) + 1
Next
Next
For b =1 To 5
num1 = Estratto(a, ruota(2), b)
For c = 1 To 5
num2 = Estratto(a, ruota(2), c)
Ambi(num1, num2) = Ambi(num1, num2) + 1
Next
Next
Next
End Function
Function AmbateUscite(inizio, condizione, num)
Dim a, b, numest1, numest2
AmbateUscite = 0
For a = inizio To inizio + (colpi-1)
For b = 1 To 5
numest1 = Estratto(a, varRuote1(condizione), b)
numest2 = Estratto(a, varRuote2(condizione), b)
If num = numest1 Then
TextOut "Ambata " & num & " " & Left(NomeRuota(varRuote1(condizione)),2) & " (" & a - inizio + 1 & "ºc)"
AmbateUscite = AmbateUscite + 1
StatAmbate(a-inizio+1) = StatAmbate(a-inizio+1) + 1
End If
If num = numest2 Then
TextOut "Ambata " & num & " " & Left(NomeRuota(varRuote2(condizione)),2) & " (" & a - inizio + 1 & "ºc)"
AmbateUscite = AmbateUscite + 1
StatAmbate(a-inizio+1) = StatAmbate(a-inizio+1) + 1
End If
Next
Next
If AmbateUscite = 0 Then
TextOut "Negativo"
CasiNeg = CasiNeg + 1
End If
End Function
Function AmbiUsciti(inizio, condizione, num1, num2)
Dim a, b, numest1, numest2, esatti, esatti2
AmbiUsciti = 0
For a = inizio To inizio + (colpi-1)
esatti = 0
esatti2 = 0
For b = 1 To 5
numest1 = Estratto(a, varRuote1(condizione), b)
numest2 = Estratto(a, varRuote2(condizione), b)
If num1 = numest1 Or num2 = numest1 Then esatti = esatti + 1
If n