adispo2000
Super Member >PLATINUM<
QUESTA ERA PERFETTA..
Option Explicit
Sub Main
'''''''''SERVE PRINCIPALMENTE per leggere FILE Matrice da jolla o cover designs o wuc
'''''ma può leggere anche matrici anche grandi
'''''--------------------------------------------------------
Dim sFileBd,Srecord,last,x,qt,t,cg,numeretto,hH,h,ts,tT,ct,K,z,NPda,NPa,NSda,NSa,NUda,NUa
Dim file,rec,lastult,selsom,tsd,tsp,Classe,riga,lb,xx
''''file output dopo filtro Pilota
Scrivi "Script Adispo-3",1
sFileBd = "C:\temp\Matrice.txt"
Call LeggiRigheFileDiTesto(sFileBd,Srecord)
last = UBound(Srecord)
ColoreTesto(2)
Scrivi "Leggo combinazioni matrice ...." & last + 1,1
'''''''''''''''''''''''''''''''''''''''''
file = InputBox("Inserisci NomeFile a Tuo Piacere in output ",,"C:\temp\01.txt")
Scrivi "Salva File output Nome...." & file,1
Call EliminaFile(file)
'''''''''''''''''''''''''''''''''''''''''
Do While Classe = ""
Classe = InputBox("Classe Matrice 6 = sestina",,6)
If Classe <> 6 Then
MsgBox("possibile solo 6 = Sestina ")
Classe = ""
Else
Exit Do
End If
Loop
selsom = InputBox("Filtra Somma D=nPrimi o P=nSecondi o U=Unificati(DP) o T=totale",,"D")
If selsom = "D" Or selsom = "d" Then
NPda = CInt(InputBox("Somma n.Primi da..... ",,12))
NPa = CInt(InputBox("Somma n.Primi a..... ",,13))
End If
If selsom = "P" Or selsom = "p" Then
NSda = CInt(InputBox("Somma n.Secondi da..... ",,38))
NSa = CInt(InputBox("Somma n.Secondi a..... ",,38))
End If
If selsom = "U" Or selsom = "u" Then
NUda = CInt(InputBox("Somma Unificata da..... ",,38))
NUa = CInt(InputBox("Somma Unificata a..... ",,38))
End If
Scrivi "Matrice - " & sFileBd,1
Scrivi "Matrice - classe " & Classe,1
Scrivi "Totale Combinazioni " & last + 1,1
Scrivi "Filtra Somma Numeretti Posizione D=nPrimi o P=nSecondi o U=Unificati(DP) O T=Totale SCELTO O RICHIESTO..( " & selsom & " )",1
ColoreTesto(1)
If selsom = "D" Or selsom = "d" Then Scrivi "N.Primi Presenze da....( " & NPda & " ) a....( " & NPa & " )",1
If selsom = "P" Or selsom = "p" Then Scrivi "N.Secondi Presenze da....( " & NSda & " ) a....( " & NSa & " )",1
If selsom = "U" Or selsom = "u" Then Scrivi "N.Unificati Presenze da....( " & NUda & " ) a....( " & NUa & " )",1
ColoreTesto(0)
Scrivi "La Matrice elabora le sestina , i numeri devono essere divisi da uno spazio vuoto e terminare senza spazi vuoti o punti",1
Scrivi "La Matrice l'ultima riga del file non deve avere righe bianche o senza dati ",1
Scrivi "La Matrice deve terminare con ultima riga valida",1
ColoreTesto(0)
'''loop per leggere file e calcolare combinazioni come da parametri filtro impostati
For x = 0 To last
Messaggio(x & "../.. " & last + 1)
'arrays decodifica
ReDim av(50)
riga = ""
lb =(Classe*2) +(Classe)
riga = Left(Srecord(x),lb)
Call SplitByChar(riga," ",av)
qt = UBound(av)
ReDim NR(50)
'''compondo arrays per numeretti
hH = 0:ts = 0:tsp = 0:tsd = 0
For h = 1 To qt
hH = hH + 1
NR(hH) = Left(Format2(av(h)),1)
hH = hH + 1
NR(hH) = Right(Format2(av(h)),1)
'''' TOTALE
If selsom = "T" Or selsom = "t" Then
ts = ts + Int(av(h))
End If
Next
''''pari o dispari
If selsom = "D" Or selsom = "d" Or selsom = "T" Then
For K = 0 To qt*2 + 2
If dispari(K) = True Then
tsd = tsd + Int(NR(K))
End If
Next
End If
If selsom = "P" Or selsom = "p" Or selsom = "T" Then
For K = 1 To qt*2 + 2
If pari(K) = True Then
tsp = tsp + Int(NR(K))
End If
Next
End If
''''''CALCOLA SOMMA DISPARI O PARI O TOTALE
'''''
If selsom = "d" Or selsom = "D" Then
If tsd >= NPda And tsd <= NPa Then
ct = ct + 1
Scrivi riga
rec = riga
Call ScriviFile(file,rec)
End If
cg = cg + 1
End If
If selsom = "P" Or selsom = "p" Or selsom = "T" Then
If tsp >= NSda And tsp <= NSa Then
ct = ct + 1
Scrivi riga
rec = riga
Call ScriviFile(file,rec)
End If
cg = cg + 1
End If
''''Unificati'''''''''''''''''''''''''''''''''''''''''''''''''
''''pari o dispari
If selsom = "U" Or selsom = "u" Or selsom = "T" Then
For K = 0 To qt*2 + 2
If dispari(K) = True Then
tsd = tsd + Int(NR(K))
End If
Next
End If
If selsom = "U" Or selsom = "U" Or selsom = "T" Then
For K = 0 To qt*2 + 2
If pari(K) = True Then
tsp = tsp + Int(NR(K))
End If
Next
End If
''''''CALCOLA SOMMA DISPARI O PARI O TOTALE
'''''
If selsom = "U" Or selsom = "U" Then
If tsd + tsp >= NUda And tsd + tsp <= NUa Then
ct = ct + 1
Scrivi riga
rec = riga
Call ScriviFile(file,rec)
End If
cg = cg + 1
End If
''''''''
If selsom = "T" Or selsom = "t" Then
Scrivi " Somma Tot." & FormattaStringa(ts,"0000") & " Somma PosD." & Format2(tsd) & " Somma PosP." & Format2(tsp) & " Somma Unificata " & FormattaStringa(tsd + tsp,"000") & " " & riga
ct = ct + 1
cg = cg + 1
End If
Next
Call CloseFileHandle(file)
Scrivi
Scrivi "Totale combinazioni elab." & x,1
Scrivi
Scrivi "Riepilogo combinazioni filtrate.." & ct,1
Scrivi
Scrivi "Tempo Elab." & TempoTrascorso
End Sub
MA NON CAPISCO LE ALTRE PERCHE' NON VANNO...........
Option Explicit
Sub Main
'''''''''SERVE PRINCIPALMENTE per leggere FILE Matrice da jolla o cover designs o wuc
'''''ma può leggere anche matrici anche grandi
'''''--------------------------------------------------------
Dim sFileBd,Srecord,last,x,qt,t,cg,numeretto,hH,h,ts,tT,ct,K,z,NPda,NPa,NSda,NSa,NUda,NUa
Dim file,rec,lastult,selsom,tsd,tsp,Classe,riga,lb,xx
''''file output dopo filtro Pilota
Scrivi "Script Adispo-3",1
sFileBd = "C:\temp\Matrice.txt"
Call LeggiRigheFileDiTesto(sFileBd,Srecord)
last = UBound(Srecord)
ColoreTesto(2)
Scrivi "Leggo combinazioni matrice ...." & last + 1,1
'''''''''''''''''''''''''''''''''''''''''
file = InputBox("Inserisci NomeFile a Tuo Piacere in output ",,"C:\temp\01.txt")
Scrivi "Salva File output Nome...." & file,1
Call EliminaFile(file)
'''''''''''''''''''''''''''''''''''''''''
Do While Classe = ""
Classe = InputBox("Classe Matrice 6 = sestina",,6)
If Classe <> 6 Then
MsgBox("possibile solo 6 = Sestina ")
Classe = ""
Else
Exit Do
End If
Loop
selsom = InputBox("Filtra Somma D=nPrimi o P=nSecondi o U=Unificati(DP) o T=totale",,"D")
If selsom = "D" Or selsom = "d" Then
NPda = CInt(InputBox("Somma n.Primi da..... ",,12))
NPa = CInt(InputBox("Somma n.Primi a..... ",,13))
End If
If selsom = "P" Or selsom = "p" Then
NSda = CInt(InputBox("Somma n.Secondi da..... ",,38))
NSa = CInt(InputBox("Somma n.Secondi a..... ",,38))
End If
If selsom = "U" Or selsom = "u" Then
NUda = CInt(InputBox("Somma Unificata da..... ",,38))
NUa = CInt(InputBox("Somma Unificata a..... ",,38))
End If
Scrivi "Matrice - " & sFileBd,1
Scrivi "Matrice - classe " & Classe,1
Scrivi "Totale Combinazioni " & last + 1,1
Scrivi "Filtra Somma Numeretti Posizione D=nPrimi o P=nSecondi o U=Unificati(DP) O T=Totale SCELTO O RICHIESTO..( " & selsom & " )",1
ColoreTesto(1)
If selsom = "D" Or selsom = "d" Then Scrivi "N.Primi Presenze da....( " & NPda & " ) a....( " & NPa & " )",1
If selsom = "P" Or selsom = "p" Then Scrivi "N.Secondi Presenze da....( " & NSda & " ) a....( " & NSa & " )",1
If selsom = "U" Or selsom = "u" Then Scrivi "N.Unificati Presenze da....( " & NUda & " ) a....( " & NUa & " )",1
ColoreTesto(0)
Scrivi "La Matrice elabora le sestina , i numeri devono essere divisi da uno spazio vuoto e terminare senza spazi vuoti o punti",1
Scrivi "La Matrice l'ultima riga del file non deve avere righe bianche o senza dati ",1
Scrivi "La Matrice deve terminare con ultima riga valida",1
ColoreTesto(0)
'''loop per leggere file e calcolare combinazioni come da parametri filtro impostati
For x = 0 To last
Messaggio(x & "../.. " & last + 1)
'arrays decodifica
ReDim av(50)
riga = ""
lb =(Classe*2) +(Classe)
riga = Left(Srecord(x),lb)
Call SplitByChar(riga," ",av)
qt = UBound(av)
ReDim NR(50)
'''compondo arrays per numeretti
hH = 0:ts = 0:tsp = 0:tsd = 0
For h = 1 To qt
hH = hH + 1
NR(hH) = Left(Format2(av(h)),1)
hH = hH + 1
NR(hH) = Right(Format2(av(h)),1)
'''' TOTALE
If selsom = "T" Or selsom = "t" Then
ts = ts + Int(av(h))
End If
Next
''''pari o dispari
If selsom = "D" Or selsom = "d" Or selsom = "T" Then
For K = 0 To qt*2 + 2
If dispari(K) = True Then
tsd = tsd + Int(NR(K))
End If
Next
End If
If selsom = "P" Or selsom = "p" Or selsom = "T" Then
For K = 1 To qt*2 + 2
If pari(K) = True Then
tsp = tsp + Int(NR(K))
End If
Next
End If
''''''CALCOLA SOMMA DISPARI O PARI O TOTALE
'''''
If selsom = "d" Or selsom = "D" Then
If tsd >= NPda And tsd <= NPa Then
ct = ct + 1
Scrivi riga
rec = riga
Call ScriviFile(file,rec)
End If
cg = cg + 1
End If
If selsom = "P" Or selsom = "p" Or selsom = "T" Then
If tsp >= NSda And tsp <= NSa Then
ct = ct + 1
Scrivi riga
rec = riga
Call ScriviFile(file,rec)
End If
cg = cg + 1
End If
''''Unificati'''''''''''''''''''''''''''''''''''''''''''''''''
''''pari o dispari
If selsom = "U" Or selsom = "u" Or selsom = "T" Then
For K = 0 To qt*2 + 2
If dispari(K) = True Then
tsd = tsd + Int(NR(K))
End If
Next
End If
If selsom = "U" Or selsom = "U" Or selsom = "T" Then
For K = 0 To qt*2 + 2
If pari(K) = True Then
tsp = tsp + Int(NR(K))
End If
Next
End If
''''''CALCOLA SOMMA DISPARI O PARI O TOTALE
'''''
If selsom = "U" Or selsom = "U" Then
If tsd + tsp >= NUda And tsd + tsp <= NUa Then
ct = ct + 1
Scrivi riga
rec = riga
Call ScriviFile(file,rec)
End If
cg = cg + 1
End If
''''''''
If selsom = "T" Or selsom = "t" Then
Scrivi " Somma Tot." & FormattaStringa(ts,"0000") & " Somma PosD." & Format2(tsd) & " Somma PosP." & Format2(tsp) & " Somma Unificata " & FormattaStringa(tsd + tsp,"000") & " " & riga
ct = ct + 1
cg = cg + 1
End If
Next
Call CloseFileHandle(file)
Scrivi
Scrivi "Totale combinazioni elab." & x,1
Scrivi
Scrivi "Riepilogo combinazioni filtrate.." & ct,1
Scrivi
Scrivi "Tempo Elab." & TempoTrascorso
End Sub
MA NON CAPISCO LE ALTRE PERCHE' NON VANNO...........