B
Beppignello
Guest
teo = Round(55*(17/18)^f,3)
Follow along with the video below to see how to install our site as a web app on your home screen.
Nota: This feature may not be available in some browsers.
Option Explicit
Sub Main
Dim k , nRetTeoF1 , nRetTeoF2 , nQReali , nQRuote , AF1 , AF2
Dim aTitoli
nQReali = Int(InputBox("inserire laquantita reale dei numeri" ,"QReale" ,1))
nQRuote = Int(InputBox("Insereire la quantita di ruote" , "QRuote" ,1))
aTitoli = Array ("","Ritardo" ,"PresTeoF1" ,"AttF1", "PresTeoF2", "AttF2")
Call InitTabella (aTitoli)
ReDim aV(5)
For k = 0 To 220
AF1 = CalcolaAspettabilita( k,nQReali,nRetTeoF1 ,nQRuote )
AF2 = CalcolaAspettabilita2( k,nQReali,nRetTeoF2 ,nQRuote )
aV (1) = k
aV(2) = nRetTeoF1
aV(3) = AF1
aV(4) = nRetTeoF2
aV(5) = AF2
Call AddRigaTabella(aV)
Next
Call Scrivi ("FORMULE CALCOLO QUANTITA TEORICA" , True)
Call Scrivi ("F1 : T = Round((90*Ruote) * Exp(-(Rit)/17.4952),4)")
Call Scrivi ("F2 : T = Round((5* Ruote )*(17/18) ^Rit,4)")
Call Scrivi
Call Scrivi ("FORMULA CALCOLO ATTENDIBILITA" , True)
Call Scrivi (" Attendibilita = Reali /(Reali + Teoriche)")
Call Scrivi
Call CreaTabella
End Sub
Function CalcolaAspettabilita(Rit,QNumeriAlRit,nRetTeorico , Ruote)
Dim ValTeorico
ValTeorico = Round((90*Ruote) * Exp(-(Rit)/17.4952),4)
nRetTeorico = ValTeorico
CalcolaAspettabilita = Round(QNumeriAlRit /(ValTeorico + QNumeriAlRit),4)
End Function
Function CalcolaAspettabilita2(Rit,QNumeriAlRit,nRetTeorico, Ruote)
Dim ValTeorico
ValTeorico = Round((5* Ruote )*(17/18) ^Rit,4)
nRetTeorico = ValTeorico
CalcolaAspettabilita2 = Round(QNumeriAlRit /(ValTeorico + QNumeriAlRit),4)
End Function
Option Explicit
Sub Main
Dim r,n,Rit,Asp,nQNumAlRit,nQTeoAlRit ,nQRuote ,AspRuoteInt ,nQNumAlRitRuoteInt ,nQTeoAlRitRuoteInt
Dim nEstrAnalisi
nEstrAnalisi = EstrazioneFin
ReDim aTitoli(9)
aTitoli(1) = "Ruota"
aTitoli(2) = "Numero"
aTitoli(3) = "Ritardo"
aTitoli(4) = "Aspettabilità"
aTitoli(5) = "QR"
aTitoli(6) = "QT"
aTitoli(7) = "AspRuoteInEsame"
aTitoli(8) = "QR RuoteEsam"
aTitoli(9) = "QT RuoteEsam"
Call InitTabella(aTitoli)
ReDim aBRuote(0)
ReDim aRuote(0)
Call ScegliRuote(aRuote,aBRuote )
ReDim aRitRuote( 12 ,90)
For r = 1 To 12
If r <> 11 And aBRuote(r) Then
nQRuote = nQRuote +1
Call Messaggio(NomeRuota(r))
ReDim aRitardi(90)
For n = 1 To 90
Rit = RitardoEstratto(n,nEstrAnalisi,r)
aRitRuote( r , n ) = Rit
Next
End If
Next
For r = 1 To 12
If r <> 11 And aBRuote(r) Then
Call Messaggio(NomeRuota(r))
For n = 1 To 90
Rit = aRitRuote(r ,n)
nQNumAlRit = QuantitaNumeriAlRit(Rit,aRitRuote ,r)
Asp = CalcolaAspettabilita(Rit,nQNumAlRit,nQTeoAlRit ,1)
nQNumAlRitRuoteInt = QuantitaNumeriAlRitRuoteInt(Rit,aBRuote ,aRitRuote )
AspRuoteInt = CalcolaAspettabilita(Rit,nQNumAlRit,nQTeoAlRitRuoteInt,nQRuote)
ReDim aColonne(9)
aColonne(1) = NomeRuota(r)
aColonne(2) = n
aColonne(3) = Rit
aColonne(4) = Asp
aColonne(5) = nQNumAlRit
aColonne(6) = nQTeoAlRit
aColonne(7) = AspRuoteInt
aColonne(8) = nQNumAlRitRuoteInt
aColonne(9) = nQTeoAlRitRuoteInt
Call AddRigaTabella(aColonne)
Call AvanzamentoElab(1,90,n)
Next
End If
Next
Call AvanzamentoElab(1,90,1)
Call Messaggio("Ordinamento in corso")
Scrivi "Ruote in esame : " & StringaRuote(aRuote)
Call CreaTabella(4)
End Sub
Function QuantitaNumeriAlRit(Rit,aRitardi, Ruota)
Dim k,q
For k = 1 To 90
If aRitardi(Ruota ,k) = Rit Then
q = q + 1
End If
Next
QuantitaNumeriAlRit = q
End Function
Function QuantitaNumeriAlRitRuoteInt(Rit,aBRuote , aRitardi)
Dim k,q,r
For r = 1 To 12
If aBRuote (r) Then
For k = 1 To 90
If aRitardi(r ,k) = Rit Then
q = q + 1
End If
Next
End If
Next
QuantitaNumeriAlRitRuoteInt = q
End Function
Function CalcolaAspettabilita(Rit,QNumeriAlRit,nRetTeorico ,Ruote)
Dim ValTeorico
ValTeorico = Round((90*Ruote) * Exp(-(Rit)/17.4952),4)
nRetTeorico = ValTeorico
CalcolaAspettabilita = Round(QNumeriAlRit /(ValTeorico + QNumeriAlRit),4)
End Function
Function CalcolaAspettabilita2(Rit,QNumeriAlRit,nRetTeorico,Ruote)
Dim ValTeorico
ValTeorico = Round((5*Ruote)*(17/18) ^Rit,9)
nRetTeorico = ValTeorico
CalcolaAspettabilita2 = Round(QNumeriAlRit /(ValTeorico + QNumeriAlRit),4)
End Function
Option Explicit
Sub Main
Dim k,nRetTeoF1,nRetTeoF2,nQReali,nQRuote,AF1,AF2
Dim aTitoli
nQReali = Int(InputBox("inserire laquantita reale dei numeri","QReale",1))
nQRuote = Int(InputBox("Insereire la quantita di ruote","QRuote",1))
aTitoli = Array("","Ritardo","PresTeoF1","AttF1","PresTeoF2","AttF2")
Call InitTabella(aTitoli)
ReDim aV(5)
ReDim aPTeoF1(220)
ReDim aPTeoF2(220)
For k = 0 To 220
AF1 = CalcolaAspettabilita(k,nQReali,nRetTeoF1,nQRuote)
AF2 = CalcolaAspettabilita2(k,nQReali,nRetTeoF2,nQRuote)
aPTeoF1 (k) =nRetTeoF1
aPTeoF2 (k) =nRetTeoF2
aV(1) = k
aV(2) = nRetTeoF1
aV(3) = AF1
aV(4) = nRetTeoF2
aV(5) = AF2
Call AddRigaTabella(aV)
Next
Call Scrivi("FORMULE CALCOLO QUANTITA TEORICA",True)
Call Scrivi("F1 : T = Round((90*Ruote) * Exp(-(Rit)/17.4952),4)")
Call Scrivi("F2 : T = Round((5* Ruote )*(17/18) ^Rit,4)")
Call Scrivi
Call Scrivi("FORMULA CALCOLO ATTENDIBILITA",True)
Call Scrivi(" Attendibilita = Reali /(Reali + Teoriche)")
Call Scrivi
Call CreaTabella
Call PreparaGrafico("Confronto presenze teoriche" ,0 , 220 ,0, 100 * nQRuote,10 , (100* nQRuote)/10 )
' prima riga
ReDim aV(220,2)
For k = 0 To 220
aV(k,1) = k
aV(k,2) = aPTeoF1 (k)
Next
Call DisegnaLineaGrafico(aV, 1,"F1")
ReDim aV(220,2)
For k = 0 To 220
aV(k,1) = k
aV(k,2) = aPTeoF2 (k)
Next
Call DisegnaLineaGrafico(aV, 2,"F2")
' scrive grafico nell'output
Call InserisciGrafico
Scrivi "Asse X : Ritardo"
Scrivi "Asse Y : Presenze"
End Sub
Function CalcolaAspettabilita(Rit,QNumeriAlRit,nRetTeorico,Ruote)
Dim ValTeorico
ValTeorico = (Round(90 * Exp(-(Rit)/17.4952),4))*Ruote
nRetTeorico = ValTeorico
CalcolaAspettabilita = Round(QNumeriAlRit /(ValTeorico + QNumeriAlRit),4)
End Function
Function CalcolaAspettabilita2(Rit,QNumeriAlRit,nRetTeorico,Ruote)
Dim ValTeorico
ValTeorico = (Round(5*(17/18) ^Rit,4)) * Ruote
nRetTeorico = ValTeorico
CalcolaAspettabilita2 = Round(QNumeriAlRit /(ValTeorico + QNumeriAlRit),4)
End Function
LuigiB;n2005058 ha scritto:Ciao Joe allora mi sa che non ho capito bene la formula da usare..vedi se riesci a scriverla tu la finzioncina per il calcolo teorico cosi vedo...
Option Explicit
Sub Main
'Controllo 54. Script By Joe
Dim Ini,Fin,Es,Rit,N,K
Dim KK,Nu(1),Ru(1),Po(1)
Rit = 54 : Ru(1) = 1 : Po(1) = 1
Ini = EstrazioneFin - 999 : Fin = EstrazioneFin
For Es = Ini To Fin
Messaggio DataEstrazione(Es)
AvanzamentoElab Ini,Fin,Es
K = 0
For N = 1 To 90
If EstrattoRitardoTurbo(Ru(1),N,1,Es) = Rit Then
K = K + 1
Nu(1) = N
ImpostaGiocata K,Nu,Ru,Po,1,1
End If
Next
If K > 0 Then
KK = KK + 1
Scrivi String(100,"-") & FormatSpace(KK,6,True),True
Gioca Es,True
End If
Next
ScriviResoconto
End Sub
Option Explicit
Sub Main
'Campioni di Presenze. Script By Joe
Dim Ini,Fin,N,R,F
Dim FR(90)
R = BA_ : Ini = 9215 - 89 : Fin = 9215
Scrivi NomeRuota(R),True
Scrivi "Num . Freq.",True
For N = 1 To 90
F = EstrattoFrequenza(R,N,Ini,Fin)
Scrivi N & Chr(9) & F
FR(F) = FR(F) + 1
Next
Scrivi
Scrivi "Freq. FdF",True
For F = 0 To 15
Scrivi F & Chr(9) & FR(F)
Next
End Sub