Novità

ilegend se lo ritieni interessante potremmo lavorarci su

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 ?
 
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
 
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
 
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"
 
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
 
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
 
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
 
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
 
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:
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
    martedì 14 gennaio 2025
    Bari
    41
    25
    12
    73
    55
    Cagliari
    54
    20
    48
    32
    67
    Firenze
    75
    23
    68
    10
    38
    Genova
    33
    27
    81
    70
    64
    Milano
    68
    01
    64
    86
    87
    Napoli
    47
    75
    45
    10
    21
    Palermo
    55
    86
    33
    53
    70
    Roma
    88
    78
    61
    06
    07
    Torino
    76
    08
    23
    61
    82
    Venezia
    25
    15
    49
    21
    81
    Nazionale
    70
    10
    32
    78
    07
    Estrazione Simbolotto
    Bari
    07
    14
    28
    45
    31

Ultimi Messaggi

Indietro
Alto