Novità

IL RITARDO CUMULATO

vincenzo4221

Advanced Member >PLATINUM<
E' possibile avere uno script che calcoli il famoso Ritardo Cumulato ?

copia incolla -"Esistono diversi modi di affrontare il gioco sui ritardatari, uno di questi è dato dal ritardo cumulato.
Il ritardo cumulato altro non è che la somma dei ritardi che una combinazione ha su ciascuna delle ruote
prese in considerazione."-
Lo script dato un numero dovrebbe fornire la seguente TABELLA:

Se si riesce , magari , a fare in modo che anche la formazione di coppia possa essere presa in considerazione x il calcolo del ritardo cumulativo sarebbe fantastico

Vi sono tantissime Metodologie Statistiche suggerite da tanti appassionati , che hanno come BASE di PARTENZA , proprio il ritardo cumulativo o totale , a buon intenditore...........
... Allego tabella:
la tabella riguarda il 07 apr 2007. ritardo cumulato o totale.jpg
 
Ultima modifica:
Ciao personalmente non amo i ritardatari.

Ma anche se fosse un argomento di mio interesse sE non spieghi l utilità di quello che ti vorresti, come si fa ?
Il mio è solo un consiglio per tutti., se volete uno script fate un esempio reale possibilmente attuale e indicate ne l utilità.
Ti faccio un esempio.
Se ho i dati corretti
Numero più ritardato su tutte 49 da 7 estrazioni , non è molto
Cmq per ritardi
Le coppie di ruote più ritardato sono
Ca.Pa. 40.25.=65
Ca.To. 40.23=63

Esempio recente.
E se invece si giocasse sulle ruote con maggiore frequenza?
Quando si chiede uno script dite anche il perché
Sarebbe più semplice trovare la soluzione.
Ciao e buona serata:)
 
Ultime 201 estrazioni
Ca.Pa 24 Freq
12+12
Così anche su ca.ro e ro.Pa
Perché scegliere una cosa e non l altra?
Risultati con modulo statistica veloce e Tabellone senza script
 
La mia richiesta non è finalizzata a nessuna metodologia specifica , si cerca semplicemente di seguire le nozioni date da chi ne sa di più , i maestri noti come, Leontino Gorgia , il Fisico , Severo , Manna , i quali per INTENDERCI sono messi in pratica da tanti Bravi appassionati ESPERTI come il nostro amico MIKI , BladeRunner e altri bravi amici .
Fattori , quali , la FANTASIA , i Rapporti di vari PARAMETRI che indicono ad una superfrequenza o ad uno scompenso , la media cumulata , il ritardo globale , I SINCRONISMI , le strutture spaziometriche , e nell' intero LEGATO da convergenze possono darci un indicazione.......mi mancano altre possibilità di utilizzo di dati/parametri che non posso avere... e quando questo succede , CHIEDO con un per favore .

A chi decide di darci/mi una mano , a chi da tempo , cerca di informarsi sul suo passatempo preferito e cerca nel mondo free ...e passa il tempo con i dati di elaborazioni di software, plugin e/o script.

Il risultato dello script non deve seguire la logica del trovare il più ritardato per estratto o ambo , ma venire in possesso di dati da interpretare , e quindi chiedo allo script di esaminare un determinato numero , ottenendo il suo ritardo per ruota o per nruote e aggiungendo in colonne gli altri dati , quali la somma e il rapporto fra il rit Minimo e il ritardo naturale (vedi tabella) della combinazione in esame , questi dati possono concorrere alla determinazione di un pronostico e qui entrano in causa altre cognizioni sopra accennate.
 
Ultima modifica:
Ciao Vincenzo, non ho mai messo in dubbio la tua educazione o cortesia ci mancherebbe altro.

Mi chiedevo semplicemente come poter utilizzare i dati.mi piace imparare ed ascolto volentieri chi ne sa più di me. Ti dico personalmente non gioco ma sono un tipo curioso.
Hai provato a guardare nella sezione che ti ho detto se può esserti utile?

Grazie. :)
Ciao :)
 
Codice:
Option Explicit

Sub Main
'Piramide dei Ritardi per Vincenzo Script By Joe v.1.0 del 5/11/2015
	Dim Es,N,R
	Dim C,T,X,A,B
	Dim Tit(14)
	Dim Bi(10,2)

	Es = EstrazioneFin : N = 35
	
	Es = 7735 'ATTENZIONE: CANCELLARE TUTTA QUESTA LINEA DI CODICE	
		
	Es = Int(InputBox("Inserisci il numero 'Id' ","ESTRAZIONE",Es))
	N = Int(InputBox("Quale Numero  ? ","RITARDI DEL LOTTRONE",N))
	
	For R = 1 To 10 : Tit(R) = FormatSpace(R,2,True) & "° Rit" : Next
	Tit(11) = "Minimo" : Tit(12) = "Somma"
	Tit(13) = "Rit Nat" : Tit(14) = "Min/RN"
	InitTabella(Tit)
	
	For R = 1 To 10
		Bi(R,1) = R : Bi(R,2) = EstrattoRitardo(R,N,,Es)
	Next
	OrdinaMatrice Bi,True,2
	
	For C = 1 To 10
		T = 0 : ReDim V(14)
		For X = C To 1 Step - 1
			V(X) = SiglaRuota(Bi(X,1)) & FormatSpace(Bi(X,2),4,True)
			T = T + Bi(X,2)
		Next
		A = Bi(C,2) : B = Round(1 / Prob(1,1,Int(C)),2)
		V(11) = A : V(12) = FormatSpace(T,4) : V(13) = B : V(14) = Round(A/B,2)
		AddRigaTabella(V)
	Next
	Scrivi "Numero " & N,True
	Scrivi
	Scrivi "Aggiornato al " & DataEstrazione(Es),True
	Scrivi
	CreaTabella
	ColoreTesto 2 : Scrivi "Script By Joe",True : ColoreTesto 0
End Sub
 
Ciao a tutti
Ciao joe; )
Grazie per questo codice:)
Non parlo della ricerca che svolge,
Ma proprio del codice.
Per chi è alle prime armi come me questo è fonte di studio.
Grande script.
Grazie mille e mille i liKe
 
Magnifica piramide Joe , e ancora meglio , sarebbe avere la possibilità di poter avere i dati , su una combinazione di più numeri , a scelta, da 1 a 5 minimo ; non so se è fattibile, forse una combinazione di 5 numeri sono troppi ?
DalI'1° post " ritardo cumulato altro non è che la somma dei ritardi che una combinazione ha su ciascuna delle ruote prese in considerazione." .
Cosi l'argomento sarà trattato in maniera completa , quando vuoi , con tempo e voglia.:):) ciao
 
Ultima modifica:
Ciao Vincenzo.

Attualmente no.

E' cosa che non mi sento d'affrontare.

:)
 
Ultima modifica:
Ciao Vincenzo,

Buona Sera a tutte/i.

Se esegui lo script ... attualmente per il lottrone 25 ... troverai valori di somma particolarmente elevati.

Mentre invece il valore più alto per rapporto RitardoMinimo/RitardoNaturale lo si ottien per il numero 30.

Naturalmente vi sono combinazioni ed indicazioni per le ruote coinvolte.

Per me è opera del lottologo estarre i dati e ... come dici tu, questo compito non può essere demandato

allo schema rigido vincolato dal metodo che lo descrive e lo riassume.

La ridondanza del 30 che si ritrova anche nella distanza dell'ambo simmetrico 17.47

lo rende un interessante capogioco per tentare l' Ambo nelle ruote esposte e tutte.

Volendo osare maggiormente con le sorti, c'è una quarta colonna riepilogativa.

Penso sia analoga a quella del ritardo a tutte e, nel caso, qui si rileva il lottrone 49.

2015110612210.jpg

:)
 
Ciao Joe , ultra felice nel sentirti , e sopratutto , ritrovarmi "convergente" con le tue deduzioni analitiche , sopratutto sul 25 , giocato prematuramente da oltre 7 colpi su CA e TO , favorito in altra mia analisi x queste due ruote .
per il 30 anch'io sono stato allertato visto il notevole rapporto Rm/Rn ,oltre il 9 -

PS: ho difficoltà nell'inserire un allegato che voglio farti vedere , a breve
 
Ultima modifica:
Ciao ...

Aggiungo una cosa (grazie anche a Genal)

La tripla-figurale 1-4-7 è nota ed in attesa di risultati

all'attenzione da tempo di alcuni ritardisti perchè proprio a Milano ...

c'è un gruppo di 24 Ambi che tarda da più 200 estrazioni.

Tra questi ... il minimo appunto di 201 estrazioni a Milano è della terna 77.14.41

ed il massimo è sempre a Milano con 532 estrazioni detenuto dalla terna 11.47.74.

Media, in accezione ampia la terna 44.71.17 tarda nella sorte di Ambo (sempre a Milano) da 246 estrazioni.
 
ciao a tutti , più volte Joe mi ha chiesto di fare esempi sulle classi e voglio cogliere l'occasione per
riprendere l'argomento.
In questo script la routine che scrive a video la tabella l'ho presa direttamente dallo script di joe
tale e quale (cambiato solo noe alle variabili) .Quindi questo script è sia mio che di Joe-

Con l'utilizzo delle classi ho aggiunto la possibilitò di analizzare contemporaneamente
un insieme di lunghette o colonne che dir si voglia , tale insieme si seleziona dalle formazioni
configurate nel programa ,
Ad esempio si puo scegliere la formazione Estratti , o la formazione Ambi , o le cadenze .. insomma quelle presenti,
Si puo impostare la sorte da analizzare.
Lo script analizza tutte le colonne della formazione le ordina per il ritardo più alto e mostra a video le relative piramidi ,


il flusso è questo
- scelgo la formazione
'- istanzio una collectione
- inserisco nella colleectione le colonne della formazione attraverso l'oggetto clsPiramide
- ordino la collection per ritardo più alto
. mostro in output le piramidi

Codice:
Option Explicit
' questo oggetto riceve i parametri necssari per creare la piramide dei ritardi comulati
Class clsPiramide
 ' variabili visibili solo dentro la classe
 Private aNum ' contiene i numeri con cui la piramide viene calcolata
 Private nSorte ' contiene il valore che indica la sorte a cui si riferisce la piramide
 Private nClasseFrz ' classe formazione
 Private idEstr ' contiene l'id estrazione a ci si riferisce la piramide
 Private aRitPerRuota  ' matrice a 2 dimensioni contiene i ritardi calcolati su ciascuna ruota
 ' è ordinata  automaticamente quindi la ruota va letta dall'indice 0
 ' dell'elemento corrente , il ritardo dall'indice 1
 Dim Tit(14) ' titoli della tabella
 ' è una proprieta di sola lettura riorna il ritardo piu alto sulle ruote
 Public Property Get RitPiuAlto
  ' dato che la matrice è ordinata mi interessa l'indice 1
  RitPiuAlto = aRitPerRuota(1,1)
 End Property
 ' è una proprieta di sola lettura riorna la ruota al ritardo piu alto sulle ruote
 Public Property Get RuotaRitPiuAlto
  ' dato che la matrice è ordinata mi interessa l'indice 1
  RuotaRitPiuAlto = aRitPerRuota(1,0)
 End Property
 ' serve ad inizializzare l'oggetto con i parametri necessari
 ' va lanciata dopo aver istanziato la classe
 Sub Init(aN,nS,nC,idE)
  Dim r
  ' assumo i parametri memorizzandoli nelle var locali
  aNum = aN
  nSorte = nS
  idEstr = idE
  nClasseFrz = nC
  ' inizializzo i valori per creare la tabella
  For r = 1 To 10 : Tit(r) = FormatSpace(r,2,True) & "° Rit" : Next
  Tit(11) = "Minimo" : Tit(12) = "Somma"
  Tit(13) = "Rit Nat" : Tit(14) = "Min/RN"
  ' creo la piramide che rimane ancora un oggetto virtuale in memoria
  CreaTabellaPiramide
 End Sub
 ' sub privata visibile solo dentro la classe
 ' crea la piramide con i parametri forniti (numeri ruota estrazione)
 ' ordina la matrice dei ritardi per ruota
 Private Sub CreaTabellaPiramide()
  Dim r,i
  ReDim aRitPerRuota(11,1)
  ReDim aRuote(1)
  i = 0
  For r = 1 To 12
   If r <> 11 Then
    i = i + 1
    aRuote(1) = r
    aRitPerRuota(i,0) = r
    aRitPerRuota(i,1) = RitardoCombinazioneTurbo(aRuote,aNum,nSorte,idEstr)
   End If
  Next
  Call OrdinaMatrice(aRitPerRuota,- 1,1)
 End Sub
 Sub PrintOut
  Dim k,a,b,c,t,x
  Call Scrivi("Numeri : " & StringaNumeri(aNum,,True))
  Call Scrivi("Sorte : " & NomeSorte(nSorte))
  InitTabella(Tit)
  For c = 1 To 10
   t = 0 : ReDim V(14)
   For x = c To 1 Step - 1
    V(x) = SiglaRuota(aRitPerRuota(x,0)) & FormatSpace(aRitPerRuota(x,1),4,True)
    t = t + aRitPerRuota(x,1)
   Next
   a = aRitPerRuota(c,1) : b = Round(1 / Prob(nClasseFrz,nSorte,Int(c)),2)
   V(11) = a : V(12) = FormatSpace(t,4) : V(13) = b : V(14) = Round(a/b,2)
   AddRigaTabella(V)
  Next
  Call CreaTabella
  ColoreTesto 2 : Scrivi "Script By Joe",True : ColoreTesto 0

 End Sub
End Class
Sub Main
 Dim nSorte,nClasse,nIdEstr , e, k
 Dim aElemFormazione() ' colonne apparetenenti alla formazione selezionata
 Dim clsP ' oggetto clsPiraide
 Dim collColonne ' collection delle colonne
 Dim nPrimeDaMostrare ' limite prime n piramidi da mostrare
 
 
 nIdEstr = EstrazioneFin
 nPrimeDaMostrare = 100  'gestendo le formazioni che potrebebro avere anche molte colonne
          ' impostiamo un limite per le prime N (ordinate)
 
 ' sceglie una formazione
 If RichiediFormazione(aElemFormazione,nSorte,nClasse) Then
  ' predispongo l'array per i numeri da analizzare
  ReDim aNum(nClasse)
  ' istanzio la collection che conterra tutte le colonne presenti nella formazione selezionata
  Set collColonne = GetNewCollection
  ' ciclo sugli elementi della formazione e istanzio per ognuno
  ' l'oggetto clsPiramide che poi aggiungo alla collection
  For k = 1 To UBound(aElemFormazione)
   ' leggo i numeri della colonna corrente
   For e = 1 To UBound(aNum)
    aNum(e) = aElemFormazione(k,e)
   Next
   ' istanzio l'oggetto clsPiramide
   Set clsP = New clsPiramide
   ' inizializzo l'oggetto clsPiramide
   ' l'inizializzazione calcola internamente i valori della piramide
   Call clsP.Init(aNum,nSorte,nClasse,nIdEstr)
   ' aggiungo l'oggetto nella collection
   collColonne.Add( clsP)
   Call AvanzamentoElab(1,UBound(aElemFormazione),k)
   If ScriptInterrotto Then Exit For
  Next
  ' ordino la collection per la proprieta RitPiuAlto
  ' il valore della proprietà <RitPiuAlto> era stato calcolato in fase di inizializzazione dell'oggetto
  ' clsPiramide internamente alla classe
  Call OrdinaItemCollection(collColonne,"RitPiuAlto",,,- 1)
  ' a questo punto nella collection <collColonne> abbiamo tutti gli oggetti clsPiramide ognuno rappresenta
  ' una colonna della formazione selezionata con tutti i suoi valori calcolati
  ' mostriamo in output le prime N piramidi
  k = 0
  For Each clsP In collColonne
   Call clsP.PrintOut
   Call Scrivi
   k = k + 1
   If k > nPrimeDaMostrare Then Exit For
  Next
  
  Set collColonne = Nothing
 End If
End Sub
Function RichiediFormazione(aElemFormazione,nRetPuntiDaFare,nRetClasseFrz)
 Dim s
 Dim n
 Dim id
 ReDim aNomiForm(0)
 Call ElencoFileInDirectory(GetDirectoryAppData & "formazioni\",aNomiForm,".frz")
 id = ScegliOpzioneMenu(aNomiForm,1,"Selezione formazione")
 If GetElementiFormazione(aNomiForm(id),aElemFormazione) Then
  n = CInt(InputBox("Inserire i punti da realizzare su un qualsiasi elemento della formazione",,1))
  nRetClasseFrz = GetClasseFormazione(aNomiForm(id))
  If n <= nRetClasseFrz Then
   nRetPuntiDaFare = n
   RichiediFormazione = True
  Else
   MsgBox "I punti da realizzare non possono essere superiori alal classe della formazione",vbCritical
  End If
 End If
End Function
 
Ciao Luigi.

Innanzi tutto grazie.

Si, pro domo mea, avevo organizzato qualcosa di simile ... ma da ignorantone,

quale sono, con altra tecnica ... quindi ... mi studierò, il tuo uilissimo esempio.

Anch'io avevo trasformato in routine lo (stesso) script.

Richiamandolo ... 90 volte, con un array, capace di raccogliere i 10 risultati,

calcolati ad ogni chiamata.

Inserendo poi questi pre-risultati in una tabella riassuntiva (ed ordinabile),

ho potuto facilmente estrarre da essa quanto ho già riassunto per dati ed in grafica,

nei messaggi precedenti.

piramidi.jpg


Come si vede per "3 ruote" miglior valore ... era ad indicare il lottrone 30.

:) Buona Domenica a tutte/i.
 
Ultima modifica:
CIAO , sono veramente contento di aver stimolato l'attenzione , (anche su diversi argomenti), e veramente non mi aspettavo il sviluppo enorme di dati che si riescono ad ottenere con il magnifico script di LUIGI , veramente grazie , ma devo far notare , che rimangono escluse le formazioni sincrone , se invece lo script mi chiedesse quali sono i numeri che voglio analizzare.......... ; approfitto dello stato di grazia:), e faccio notare che solo il riferimento al dato storico ci potrebbe rassicurare sulla validità del eventuale dato in evidenza , ritornando al 30 chi ci dice a quanto ammonta "la max somma storica" del Rit: cumulato?
 
eheheh lo stato di grazia. .. mi avessi scambiato per un santo .-) ahahahh , il mio script fondamentalmente è identico a quello di joe la differenza sta solo nel fatto che tramite le classi è stato possibile gestire più colonne contemporaneamente. e qui rifaccio un po' di teoria.

- la classe è un oggetto . come se fosse un frullatore , una lavatrice .. un elettrodomestico qualsiasi
- serve a fare delle cose specifiche trattando dati astratti
- dispone di proprietà e di metodi
- le classi si racchiudono nel costrutto Class ...End Class
- per usare una classe si deve istanziare con il costrutto
Set Variabile = New NomeClasse
- il comportamento della classe lo definiamo noi con il codice che scriviamo
- per terminare la classe si imposta la variabile della sua istanza a Nothing esempio : Set Variabile = Nothing


tornando sulle richieste di vincenzo la modifica per gestire anche numeri scelti dall'utente è semplice
in serata te la faccio , i massimi storici sono un po più complicati nel senso che lo script si rallenterebbe un bel po' ..
 
Ultima modifica di un moderatore:
Ciao ecco la modifica per scegliere se inserire numeri manualmente o se prenderli da una formazione , riguardo gli storici non mi è chiaro su quale valore bisogna fare il calcolo ma temo che richieda lunghi tempi di elaborazione .. spiega con un esempio

Codice:
Option Explicit
' questo oggetto riceve i parametri necssari per creare la piramide dei ritardi comulati
Class clsPiramide
    ' variabili visibili solo dentro la classe
    Private aNum ' contiene i numeri con cui la piramide viene calcolata
    Private nSorte ' contiene il valore che indica la sorte a cui si riferisce la piramide
    Private nClasseFrz ' classe formazione
    Private idEstr ' contiene l'id estrazione a ci si riferisce la piramide
    Private aRitPerRuota     ' matrice a 2 dimensioni contiene i ritardi calcolati su ciascuna ruota
    ' è ordinata  automaticamente quindi la ruota va letta dall'indice 0
    ' dell'elemento corrente , il ritardo dall'indice 1
    Dim Tit(14) ' titoli della tabella
    ' è una proprieta di sola lettura riorna il ritardo piu alto sulle ruote
    Public Property Get RitPiuAlto
        ' dato che la matrice è ordinata mi interessa l'indice 1
        RitPiuAlto = aRitPerRuota(1,1)
    End Property
    ' è una proprieta di sola lettura riorna la ruota al ritardo piu alto sulle ruote
    Public Property Get RuotaRitPiuAlto
        ' dato che la matrice è ordinata mi interessa l'indice 1
        RuotaRitPiuAlto = aRitPerRuota(1,0)
    End Property
    ' serve ad inizializzare l'oggetto con i parametri necessari
    ' va lanciata dopo aver istanziato la classe
    Sub Init(aN,nS,nC,idE)
        Dim r
        ' assumo i parametri memorizzandoli nelle var locali
        aNum = aN
        nSorte = nS
        idEstr = idE
        nClasseFrz = nC
        ' inizializzo i valori per creare la tabella
        For r = 1 To 10 : Tit(r) = FormatSpace(r,2,True) & "° Rit" : Next
        Tit(11) = "Minimo" : Tit(12) = "Somma"
        Tit(13) = "Rit Nat" : Tit(14) = "Min/RN"
        ' creo la piramide che rimane ancora un oggetto virtuale in memoria
        CreaTabellaPiramide
    End Sub
    ' sub privata visibile solo dentro la classe
    ' crea la piramide con i parametri forniti (numeri ruota estrazione)
    ' ordina la matrice dei ritardi per ruota
    Private Sub CreaTabellaPiramide()
        Dim r,i
        ReDim aRitPerRuota(11,1)
        ReDim aRuote(1)
        i = 0
        For r = 1 To 12
            If r <> 11 Then
                i = i + 1
                aRuote(1) = r
                aRitPerRuota(i,0) = r
                aRitPerRuota(i,1) = RitardoCombinazioneTurbo(aRuote,aNum,nSorte,idEstr)
            End If
        Next
        Call OrdinaMatrice(aRitPerRuota,- 1,1)
    End Sub
    Sub PrintOut
        Dim k,a,b,c,t,x
        Call Scrivi("Numeri : " & StringaNumeri(aNum,,True))
        Call Scrivi("Sorte : " & NomeSorte(nSorte))
        InitTabella(Tit)
        For c = 1 To 10
            t = 0 : ReDim V(14)
            For x = c To 1 Step - 1
                V(x) = SiglaRuota(aRitPerRuota(x,0)) & FormatSpace(aRitPerRuota(x,1),6,True)
                t = t + aRitPerRuota(x,1)
            Next
            a = aRitPerRuota(c,1) : b = Round(1 / Prob(nClasseFrz,nSorte,Int(c)),2)
            V(11) = a : V(12) = FormatSpace(t,4) : V(13) = b : V(14) = Round(a/b,2)
            AddRigaTabella(V)
        Next
        Call CreaTabella
        ColoreTesto 2 : Scrivi "Script By Joe",True : ColoreTesto 0

    End Sub
End Class
Sub Main
    Dim nSorte,nClasse,nIdEstr,e,k
    Dim aElemFormazione() ' colonne apparetenenti alla formazione selezionata
    Dim clsP ' oggetto clsPiraide
    Dim collColonne ' collection delle colonne
    Dim nPrimeDaMostrare ' limite prime n piramidi da mostrare
    
    
    nIdEstr = EstrazioneFin
    nPrimeDaMostrare = 100     'gestendo le formazioni che potrebebro avere anche molte colonne
                     ' impostiamo un limite per le prime N (ordinate)
    
    
    
                
    
    ' sceglie una formazione
    If ScegliNumeriAnalisi (aElemFormazione,nSorte,nClasse) Then
        ' predispongo l'array per i numeri da analizzare
        ReDim aNum(nClasse)
        ' istanzio la collection che conterra tutte le colonne presenti nella formazione selezionata
        Set collColonne = GetNewCollection
        ' ciclo sugli elementi della formazione e istanzio per ognuno
        ' l'oggetto clsPiramide che poi aggiungo alla collection
        For k = 1 To UBound(aElemFormazione)
            ' leggo i numeri della colonna corrente
            For e = 1 To UBound(aNum)
                aNum(e) = aElemFormazione(k,e)
            Next
            ' istanzio l'oggetto clsPiramide
            Set clsP = New clsPiramide
            ' inizializzo l'oggetto clsPiramide
            ' l'inizializzazione calcola internamente i valori della piramide
            Call clsP.Init(aNum,nSorte,nClasse,nIdEstr)
            ' aggiungo l'oggetto nella collection
            collColonne.Add(    clsP)
            Call AvanzamentoElab(1,UBound(aElemFormazione),k)
            If ScriptInterrotto Then Exit For
        Next
        ' ordino la collection per la proprieta RitPiuAlto
        ' il valore della proprietà <RitPiuAlto> era stato calcolato in fase di inizializzazione dell'oggetto
        ' clsPiramide internamente alla classe
        Call OrdinaItemCollection(collColonne,"RitPiuAlto",,,- 1)
        ' a questo punto nella collection <collColonne> abbiamo tutti gli oggetti clsPiramide ognuno rappresenta
        ' una colonna della formazione selezionata con tutti i suoi valori calcolati
        ' mostriamo in output le prime N piramidi
        k = 0
        For Each clsP In collColonne
            Call clsP.PrintOut
            Call Scrivi
            k = k + 1
            If k > nPrimeDaMostrare Then Exit For
        Next
        
        Set collColonne = Nothing
    End If
End Sub

Function ScegliNumeriAnalisi (aElemFormazione,nSorte,nClasse)
    
    If ScegliOpzione = 0 Then
        ScegliNumeriAnalisi = ScegliNumeriManuale(aElemFormazione,nSorte,nClasse)

    Else
        ScegliNumeriAnalisi = RichiediFormazione(aElemFormazione,nSorte,nClasse)

    End If
    
End Function
Function ScegliOpzione
    Dim i
    ReDim aVoci (1)
    aVoci (0) = "Inserimento numeri manuale"
    aVoci (1) = "Selezione da formazione"
    
    i = ScegliOpzioneMenu( aVoci ,0)
    ScegliOpzione = i
    
End Function  
Function ScegliNumeriManuale(aElemFormazione,nSorte,nClasse)
    ReDim aNum (0)
    Dim nQ , k , n
    
    nQ = ScegliNumeri(aNum)
    If nQ > 0 Then
        ReDim aElemFormazione(1,nQ)
        For k = 1 To nQ
            aElemFormazione(1,k) = aNum(k)
        Next    
        nClasse = nQ
        n = CInt(InputBox("Inserire i punti da realizzare",,1))
        If n <= nClasse Then
            nSorte= n
            ScegliNumeriManuale= True
        Else
            MsgBox "I punti da realizzare non possono essere superiori alla classe",vbCritical
        End If

    End If
End Function
Function RichiediFormazione(aElemFormazione,nRetPuntiDaFare,nRetClasseFrz)
    Dim s
    Dim n
    Dim id
    ReDim aNomiForm(0)
    Call ElencoFileInDirectory(GetDirectoryAppData & "formazioni\",aNomiForm,".frz")
    id = ScegliOpzioneMenu(aNomiForm,1,"Selezione formazione")
    If GetElementiFormazione(aNomiForm(id),aElemFormazione) Then
        n = CInt(InputBox("Inserire i punti da realizzare su un qualsiasi elemento della formazione",,1))
        nRetClasseFrz = GetClasseFormazione(aNomiForm(id))
        If n <= nRetClasseFrz Then
            nRetPuntiDaFare = n
            RichiediFormazione = True
        Else
            MsgBox "I punti da realizzare non possono essere superiori alla classe della formazione",vbCritical
        End If
    End If
End Function
 
Ultima modifica di un moderatore:

Ultima estrazione Lotto

  • Estrazione del lotto
    sabato 11 gennaio 2025
    Bari
    73
    43
    01
    58
    81
    Cagliari
    69
    60
    18
    02
    10
    Firenze
    25
    32
    18
    55
    54
    Genova
    48
    05
    40
    34
    69
    Milano
    10
    07
    70
    44
    79
    Napoli
    11
    89
    01
    34
    80
    Palermo
    37
    80
    82
    44
    77
    Roma
    78
    04
    38
    39
    56
    Torino
    08
    13
    30
    27
    24
    Venezia
    56
    75
    36
    18
    70
    Nazionale
    63
    83
    19
    31
    80
    Estrazione Simbolotto
    Bari
    35
    34
    12
    23
    20
Indietro
Alto