CIAO
Option Explicit
Sub Main
Dim A(120),B(120),C(120),D(120),E(120),num(120)
Dim aPermut,cls,nRig,nCol,ruota,poste(5),clp
Dim aCol(8),idestr,Es,r1,ruote,pos
Dim A1,B1,C1,D1,E1,AA1(5)
cls = 5
clp = 1
Es = InputBox("Inserisci numero estrazione",idestr,8901)
r1 = InputBox("Inserisci numero ruota ( 1 - 10)",ruota,6)
poste(3) = 0.4
poste(4) = 0.4
poste(5) = 0.2
Scrivi(" Estrazione n." & Format2(Es) & " del " & DataEstrazione(Es)),0,0
Scrivi " " & Left(NomeRuota(r1),2) & " " & StringaEstratti(Es,r1)
Scrivi ""
ColoreTesto 2
Scrivi "********************************************************************************************************** NUMERO ESTRATTO POSIZIONE 1"
ColoreTesto 0
For pos = 1 To 5
Messaggio pos
A1 = Estratto(Es,r1,pos)
B1 = Fuori90(A1 * 13)
C1 =(91 - B1)
D1 = Fuori90(A1 * 7)
E1 =(91 - A1)
AA1(1)=A1:AA1(2)=B1:AA1(3)=C1:AA1(4)=D1:AA1(5)=E1
EliminaRipetuti AA1
If AA1(5)<>0 Then
aCol(1) = A1
aCol(2) = B1
aCol(3) = C1
aCol(4) = D1
aCol(5) = E1
aPermut = SviluppoPermutazioni(aCol,cls)
ReDim aNumeri(cls),aCostanti(cls),aNC(cls)
For nRig = 1 To UBound(aPermut)
For nCol = 1 To cls
aNumeri(nCol) = aPermut(nRig,nCol)
aCostanti(nCol) =(15 -(nCol - 1))
aNC(nCol) = Fuori90(aNumeri(nCol) * aCostanti(nCol))
If nCol = 1 Then A(nRig) = aNC(nCol)
If nCol = 2 Then B(nRig) = aNC(nCol)
If nCol = 3 Then C(nRig) = aNC(nCol)
If nCol = 4 Then D(nRig) = aNC(nCol)
If nCol = 5 Then E(nRig) = aNC(nCol)
Next
ruote = Array(0,r1)
num(nRig) = Array(0,(A(nRig)),(B(nRig)),(C(nRig)),(D(nRig)),(E(nRig)))
EliminaRipetuti num(nRig)
ImpostaGiocata nRig,num(nRig),ruote,poste,clp,2,0
Gioca Es
Next
If pos < 5 Then
ColoreTesto 2
Scrivi "********************************************************************************************************** NUMERO ESTRATTO POSIZIONE" & " " &(pos + 1)
ColoreTesto 0
Else
End If
'Else
'MsgBox" Il numero è uguale a 15 o un suo multiplo, sviluppo non possibile"
End If
Next
ScriviResoconto
End Sub
Option Explicit
Sub Main
Dim A(120),B(120),C(120),D(120),E(120),num(120)
Dim aPermut,cls,nRig,nCol,ruota,poste(5),clp
Dim aCol(8),idestr,Es,r1,ruote,pos
Dim A1,B1,C1,D1,E1,AA1(5)
cls = 5
clp = 1
Es = InputBox("Inserisci numero estrazione",idestr,8901)
r1 = InputBox("Inserisci numero ruota ( 1 - 10)",ruota,6)
poste(3) = 0.4
poste(4) = 0.4
poste(5) = 0.2
Scrivi(" Estrazione n." & Format2(Es) & " del " & DataEstrazione(Es)),0,0
Scrivi " " & Left(NomeRuota(r1),2) & " " & StringaEstratti(Es,r1)
Scrivi ""
ColoreTesto 2
Scrivi "********************************************************************************************************** NUMERO ESTRATTO POSIZIONE 1"
ColoreTesto 0
For pos = 1 To 5
Messaggio pos
A1 = Estratto(Es,r1,pos)
B1 = Fuori90(A1 * 13)
C1 =(91 - B1)
D1 = Fuori90(A1 * 7)
E1 =(91 - A1)
AA1(1)=A1:AA1(2)=B1:AA1(3)=C1:AA1(4)=D1:AA1(5)=E1
EliminaRipetuti AA1
If AA1(5)<>0 Then
aCol(1) = A1
aCol(2) = B1
aCol(3) = C1
aCol(4) = D1
aCol(5) = E1
aPermut = SviluppoPermutazioni(aCol,cls)
ReDim aNumeri(cls),aCostanti(cls),aNC(cls)
For nRig = 1 To UBound(aPermut)
For nCol = 1 To cls
aNumeri(nCol) = aPermut(nRig,nCol)
aCostanti(nCol) =(15 -(nCol - 1))
aNC(nCol) = Fuori90(aNumeri(nCol) * aCostanti(nCol))
If nCol = 1 Then A(nRig) = aNC(nCol)
If nCol = 2 Then B(nRig) = aNC(nCol)
If nCol = 3 Then C(nRig) = aNC(nCol)
If nCol = 4 Then D(nRig) = aNC(nCol)
If nCol = 5 Then E(nRig) = aNC(nCol)
Next
ruote = Array(0,r1)
num(nRig) = Array(0,(A(nRig)),(B(nRig)),(C(nRig)),(D(nRig)),(E(nRig)))
EliminaRipetuti num(nRig)
ImpostaGiocata nRig,num(nRig),ruote,poste,clp,2,0
Gioca Es
Next
If pos < 5 Then
ColoreTesto 2
Scrivi "********************************************************************************************************** NUMERO ESTRATTO POSIZIONE" & " " &(pos + 1)
ColoreTesto 0
Else
End If
'Else
'MsgBox" Il numero è uguale a 15 o un suo multiplo, sviluppo non possibile"
End If
Next
ScriviResoconto
End Sub