Novità

ilegend se lo ritieni interessante potremmo lavorarci su

Giggio

Super Member >PLATINUM<
la cosa che non mi trova concorde è il fatto che la classifica dei ritardi sia composta da 90 posizioni , io chiarirei dicendo 90 posizioni massime perche in verità le posizioni si comprimono con i ritardi uguali.
Per il resto mi sembra lo stesso concetto del ritardo relativo , o sbaglio ?
 

Giggio

Super Member >PLATINUM<
ecco il relativo script

Codice:
Option Explicit
Sub Main
   Dim idEst,Rt,e,aEstratti,Rit,idEstrIni,idEstrFin  , aPosDelNumero
   Dim nMaxRitGestito
   
   nMaxRitGestito = 11
   idEstrIni = EstrazioneIni
   idEstrFin = EstrazioneFin
   
   For Rt = 1 To 12
      ReDim aRDP(90)
      ReDim aRDPMax(90)
      ReDim aRDPFrq(90)
    
      
      If Rt <> 11 Then
         For idEst = idEstrIni To idEstrFin
            ' incrementa tutti i ritardi di posizione
            For e = 1 To 90 
               aRDP (e) = aRDP(e) +1
            Next
            Call OrdinaNumeriGetPosizioni (  idEst-1 , Rt , aPosDelNumero)
            Call GetArrayNumeriRuota(idEst,Rt,aEstratti)
            ' azzera i ritardi delle posizioni uscite
            For e  =1 To 5
               
               If aRDP (aPosDelNumero (aEstratti(e)))> aRDPMax (aPosDelNumero (aEstratti(e))) Then aRDPMax (aPosDelNumero (aEstratti(e))) = aRDP (aPosDelNumero (aEstratti(e)))
               aRDP (aPosDelNumero (aEstratti(e))) =0 
               aRDPFrq (aPosDelNumero (aEstratti(e))) = aRDPFrq (aPosDelNumero (aEstratti(e))) +1 


            Next 
              
        
         Next
         Call CreaReport(Rt,aRDP,aRDPMax,aRDPFrq ,aPosDelNumero)
         Call AvanzamentoElab(1,12,Rt)
         If ScriptInterrotto Then Exit Sub
      End If
   Next
End Sub

Sub OrdinaNumeriGetPosizioni (idEst , Rt ,aPosDelNumero)
   Dim i , Pos 
   ReDim aNumOrdinati (90 ,3)
   ReDim aPosDelNumero (90)
   
   For i = 1 To 90 
      aNumOrdinati(i ,1) = i 
      aNumOrdinati(i ,2) = EstrattoRitardoTurbo ( Rt ,i ,1,idEst)
 
   Next
   Call OrdinaMatrice (aNumOrdinati , -1 ,2)
   
   For i = 1 To 90 
      If aNumOrdinati ( i ,2) <> aNumOrdinati ( i-1 ,2) Then 
         Pos = Pos +1
      End If 
      aNumOrdinati ( i ,3) = Pos
      
      aPosDelNumero ( aNumOrdinati ( i ,1)) = Pos 
      
   Next
   
End Sub 

Sub CreaReport(Rt,aRDP,aRDPMax,aRDPFrq ,aPosDelNumero)
   Dim i
   Call Scrivi("RUOTA DI : " & NomeRuota(Rt))
   
    
   
   ReDim aV(5)
   aV(1) = "Posizione"
   aV(2) = "Rit"
   aV(3) = "RitMax"
   aV(4) = "Freq"
   aV(5) = "Numeri interessati"
   
   
   Call InitTabella(aV,vbBlue,,,vbWhite)
   For i = 1 To UBound(aRDP)  
      aV(1) = i
      aV(2) = aRDP(i)
      aV(3) = aRDPMax(i)
      aV(4) = aRDPFrq(i)
      aV(5) = GetNumeriAllaPosizione(i,aPosDelNumero )
      Call AddRigaTabella(aV,vbYellow)
   Next
 
   Call SetTableHeight(5)
   Call CreaTabella
End Sub


Function GetNumeriAllaPosizione(Pos,aPosDelNumero )

   Dim sNumeri,i
   sNumeri = ""
   
    
   For i = 1 To 90
      If aPosDelNumero (i) = Pos Then
         sNumeri = sNumeri & Format2(i) & "."
      End If
   Next
    
   GetNumeriAllaPosizione = RimuoviLastChr(sNumeri,".")
   
End Function
 

genios

Advanced Member >PLATINUM<
Giggio superlativo script anche se qualcosa non mi quadra . Ma sono un po' duro di comprendonio io .Ma sto ritardo posizionale e temporale non riesco a metabolizzarli . Ci ritorno su. Intanto se ti va andiamo avanti al prossimo parametro .

Ciao Eugenio
 

Giggio

Super Member >PLATINUM<
Ciao , se non è troppo complicato possiamo vedere .. ma non farti illusioni i qui non vedo nessun segreto e soprattutto un segreto non viene riportato sl giornale "la schedina"
 

genios

Advanced Member >PLATINUM<
In effetti :) di segreto c'è ben poco .
Giggio Come hai imparato a programmare ?

Il ritardo posizionale e temporale non riesco proprio a metabolizzarli .
Ecco il nuovo parametro .

Ciao Eugenio 25 SETTEMBRE 1990-1.jpg25 SETTEMBRE 1990-2.jpg
 

Giggio

Super Member >PLATINUM<
Ciao , si tratta di cose molto semplici.

Ritardo temporale

per me si puo chiamare ritardo del ritardo ed è piu comprensibile.

Prima di ogni nuova estrazione i numeri hanno tutti un loro ritardo e fin qui mi sembra evidente.

Ci sono 5 numeri che usciranno e questi numeri possono avere fino a 5 ritardi differenti anche questo è evidente.

Ora immagina un registro che va da 0 a 300 , sono i ritardi possibili dei numeri

Ad ogni nuova estrazione i valori di questo registro si azzerano in funzione del ritardo dei numeri usciti e si incrementano in funzione dei ritardi che non si sono azzerati perche altri numeri non sono usciti (ne possono uscire solo 5 ovviamente gli altri rimangonno nell'urna ).

Se per esempio prima di uscire il numero X aveva ritardo 10 al momento in cui il numero X esce vuol dire che è uscito un numero a ritardo 10 pertanto su quella ruota da quante estrazioni non esce un numero che si trovava al ritardo 10 ?
Prima dell'uscita del numero X cioè all'estrazione precedente c'era un certo valore , successivamente stando il numero X al ritardo 10 ed esssendo uscito questo valore che si riferisce a "da quante estrazioni non esce un numero al ritardo 10" si azzera,si incrementano invece tutti gli altri valori del ritardo del ritardo relativi a quei ritardi che non si sono azzerati con l'uscita dei 5 numeri.

Ritardo Posizionale

Stesso discorso , prima di ogni estrazione i numeri hanno tutti un certo ritardo ,quindi si possono ordinare a partire dal ritardo piu alto.
Appena i 5 numeri escono si vede che posizione occupavano nella classifica prima di uscire , a quella posizione viene azzerato il ritardo alle altre incrementato

L'autore dice che ogni numero puo avere una posizione in questo ordinamento che va da 1 a 90 , io non sono daccordo ... a ritardo uguale i numeri hanno la stessa posizione il fatto che vengano estratti 5 numeri uno dopo l'altro per me non significa nulla io li considero estratti contemporaneamente 5 alla volta


Per la tua domanda sullla programmazione , la risposta è con la pratica
 

Giggio

Super Member >PLATINUM<
se l'autore diche che il ritardo consecutivo al primo livello è dato dalla somma del ritardo attuale e quello precedente non capisco perche nella tabella inizia dal livello 2 .. la prima riga a me risulta a livello 1 , tutte le righe subiscono lo stesso problema , anche il ritardo non combacia , c'è sempre una differenza di 1.
Ho usato la tabellaordinabile in modo che si possano usare i filtri per selezionare livello e ruota

Codice:
Option Explicit
Sub Main
   Dim n,rt,l,idEstrFin,aRitardi
   ReDim aN(1)
   ReDim aRt(1)
   Dim aD
   aD = Array("","Livello","Numero","RitLiv","Ruota")
   Call InitTabella(aD,vbBlue,,,vbWhite)
   idEstrFin = EstrazioneFin
   For rt = 1 To 12
      If rt <> 11 Then
         For n = 1 To 90
            aRt(1) = rt
            aN(1) = n
            For l = 1 To 9
               aD(1) = l
               aD(2) = n
               aD(3) = SommaRitardi(l,rt,n,idEstrFin)
               aD(4) = NomeRuota(rt)
               Call AddRigaTabella(aD,vbYellow)
               If aD(3) = - 1 Then
                  If MsgBox("Il numero " & n & " non ha abbastanza ritardi per il livello " & l & " sulla ruota " & aD(4) & vbCrLf & "Interompere ? ",vbQuestion + vbYesNo) = vbYes Then
                     n = 90
                     Exit For
                  End If
               End If
            Next
         Next
      End If
      Call AvanzamentoElab(1,12,rt)
      If ScriptInterrotto Then Exit Sub
   Next
   ' Call SetTableHeight (5)
   Call CreaTabellaOrdinabile("1,3")
End Sub
Function SommaRitardi(Liv,rt,n,idEstrFin)
   Dim i,t,nMax,r,idEstr
   idEstr = idEstrFin
   r = EstrattoRitardoTurbo(rt,n,1,idEstr)
   t = r
   For i = 1 To Liv
      idEstr = idEstr - r - 1
      r = EstrattoRitardoTurbo(rt,n,1,idEstr)
      t = t + r
   Next
   SommaRitardi = t
End Function
 

genios

Advanced Member >PLATINUM<
Archimede cosi ha scritto . Ma non riesco a vederne l' utilità . Vedremo nella globalità . Ciao Eugenio

La schedina 9 ottobre 1990-1.jpgLa schedina 9 ottobre 1990-2.jpg

La schedina 9 ottobre 1990-3.jpg
 

Giggio

Super Member >PLATINUM<
ciao , ecco il nuovo script

Codice:
Option Explicit
Sub Main
   Dim n,rt,i,idEstrFin,Rit
   Dim aD
   Dim nConsec,qCons
   ReDim aRitGlob(90,2)
   aD = Array("","Numero","RitGlob")
   nConsec = 3
   idEstrFin = EstrazioneFin
   For n = 1 To 90
      aRitGlob(n,1) = n
      aRitGlob(n,2) = SommaRitardi(n,idEstrFin)
      Call AvanzamentoElab(1,90,n)
      If ScriptInterrotto Then Exit Sub
   Next
   Call OrdinaMatrice(aRitGlob,- 1,2)
   Call InitTabella(aD,vbBlue,,,vbWhite)
   For n = 1 To  90
      Rit = aRitGlob(n,2)
      qCons = 0
      For i = 0 To nConsec +90
         If isNumeroValidoLotto( n +i) Then
            If aRitGlob(n + i,2) = Rit Then
               qCons = qCons + 1
            Else
               Exit For
            End If
         Else
            Exit For
         End If    
      Next
      If qCons >= nConsec Then
         For i = 0 To nConsec - 1
            aD(1) = aRitGlob(n + i,1)
            aD(2) = Rit
            Call AddRigaTabella(aD,vbRed)
         Next
         n = n +(nConsec - 1)
      Else
         aD(1) = aRitGlob(n,1)
         aD(2) = Rit
         Call AddRigaTabella(aD,vbYellow)
      End If
   Next
   Call SetTableHeight(5)
   Call CreaTabella()
End Sub
Function SommaRitardi(n,idEstrFin)
   Dim t,rt
   t = 0
   For rt = 1 To 12
      If rt <> 11 Then
         t = t + EstrattoRitardoTurbo(rt,n,1,idEstrFin)
      End If
   Next
   SommaRitardi = t
End Function
 
Ultima modifica:

Giggio

Super Member >PLATINUM<
si tratta di una normalissima piramide dei ritardi che puoi ottenere con la funzione del programma , non servono script.
 

Ultima estrazione Lotto

  • Estrazione del lotto
    giovedì 18 aprile 2024
    Bari
    13
    39
    14
    70
    78
    Cagliari
    67
    65
    03
    87
    63
    Firenze
    85
    90
    19
    67
    78
    Genova
    60
    81
    39
    33
    13
    Milano
    90
    01
    83
    11
    88
    Napoli
    18
    12
    80
    29
    19
    Palermo
    50
    83
    40
    24
    12
    Roma
    74
    48
    75
    65
    37
    Torino
    80
    46
    44
    27
    30
    Venezia
    70
    16
    72
    03
    89
    Nazionale
    89
    22
    06
    87
    13
    Estrazione Simbolotto
    Genova
    28
    21
    43
    25
    17
Alto