Novità

Come poter dinamicizzare possibilmente il tutto?

Giggio

Super Member >PLATINUM<
ok quindi in quest oprimo pezzo diciamo che hai valorizzato l'array che avevi dichiarato con
ARuote ( 330 ,4).

Tutto questo che hai scrittosopra essendo solo 33 0 le combinazioni si puo ottenere in questo altro modo


Codice:
Dim aNumDaSvil
  Dim aRuote


  aNumDaSvil  = Array  ( 0,1,2,3,4,5,6, 7, 8, 9,10,11)

  aRuote= SviluppoIntegrale (  aNumDaSvil  ,4)

alla fine avrai aRuote ( 330 ,4 ) proprio come prima


ora non ti rimane che fare il secondo pezzo dove scorrerai le 330 colonne con un ciclo , dentro a questo ciclo un altra volta un ciclo da 1 a 4 per valorizzare la tua colonna che è un array ad una sola dimensione
otterrai di volta in volta la tua colonna da 4 numeri identificante il gruppo di ruote. , questa colonna la passi all'ae funzioni che avevi gia previsto ...

quindi i tuoi 330 array sono in realta un solo array a due dimensioni che leggerai una colonna alla volta
 

lotto_tom75

Advanced Premium Member
ok quindi in quest oprimo pezzo diciamo che hai valorizzato l'array che avevi dichiarato con
ARuote ( 330 ,4).

Tutto questo che hai scrittosopra essendo solo 33 0 le combinazioni si puo ottenere in questo altro modo


Codice:
Dim aNumDaSvil
  Dim aRuote


  aNumDaSvil  = Array  ( 0,1,2,3,4,5,6, 7, 8, 9,10,11)

  aRuote= SviluppoIntegrale (  aNumDaSvil  ,4)

alla fine avrai aRuote ( 330 ,4 ) proprio come prima


ora non ti rimane che fare il secondo pezzo dove scorrerai le 330 colonne con un ciclo , dentro a questo ciclo un altra volta un ciclo da 1 a 4 per valorizzare la tua colonna che è un array ad una sola dimensione
otterrai di volta in volta la tua colonna da 4 numeri identificante il gruppo di ruote. , questa colonna la passi all'ae funzioni che avevi gia previsto ...

quindi i tuoi 330 array sono in realta un solo array a due dimensioni che leggerai una colonna alla volta

mi sono perso... 😵🥴
 

Giggio

Super Member >PLATINUM<
tu sei partito cosi

ARUOTEQ1(4)
ARUOTEQ1(1) = BA_
ARUOTEQ1(2) = CA_
ARUOTEQ1(3) = FI_
ARUOTEQ1(4) = GE_

Vorrei, se fosse possibile, dinamicizzare il valore 1 e le sigle delle ruote dopo l'= affinchè possa avere tutti i 330 casi possibili relativi alle 330 quartine di ruote unite che si formano con le 11 ruote.

Es. del secondo caso...

ARUOTEQ2(4)
ARUOTEQ2(1) = BA_
ARUOTEQ2(2) = CA_
ARUOTEQ2(3) = FI_
ARUOTEQ2(4) = MI_



ora invece hai




ARUOTEQ(330,4)

ARUOTEQ(1,1) = BA_
ARUOTEQ(1,2) = CA_
ARUOTEQ(1,3) = FI_
ARUOTEQ(1,4) = GE_

ARUOTEQ(2,1) = BA_
ARUOTEQ(2,2) = CA_
ARUOTEQ(2,3) = FI_
ARUOTEQ(2, 4) = MI_


....

...

...

ARUOTEQ(330,1) =ro_
ARUOTEQ(330,2) = to_
ARUOTEQ(330,3) = ve_
ARUOTEQ(330, 4) = nz_




come puoi notare il numerello con il quale volevi differenziare i tuoi 330 array da una sola dimensione e che avevi scritto dopo la Q di Ruote è andato a finire come indice di un 'array a due dimensioni , come vedi si è andato a nascondere dietro la prima parentsi tonda.


quindi invece di avere 330 array diversi come volevi fare tu e come era impossibile procedere ora sono divetati un array solo ma a 2 dimensini anziche una.

ora per ottenere un array a 2 dimensioni invece del codice che hai scritto si poteva usare questo altro sistema

Codice:
Dim aNumDaSvil
  Dim aRuoteq


  aNumDaSvil  = Array  ( 0,1,2,3,4,5,6, 7, 8, 9,10,11)

  aRuoteq= SviluppoIntegrale (  aNumDaSvil  ,4)
 

lotto_tom75

Advanced Premium Member
tu sei partito cosi

ARUOTEQ1(4)
ARUOTEQ1(1) = BA_
ARUOTEQ1(2) = CA_
ARUOTEQ1(3) = FI_
ARUOTEQ1(4) = GE_

Vorrei, se fosse possibile, dinamicizzare il valore 1 e le sigle delle ruote dopo l'= affinchè possa avere tutti i 330 casi possibili relativi alle 330 quartine di ruote unite che si formano con le 11 ruote.

Es. del secondo caso...

ARUOTEQ2(4)
ARUOTEQ2(1) = BA_
ARUOTEQ2(2) = CA_
ARUOTEQ2(3) = FI_
ARUOTEQ2(4) = MI_



ora invece hai




ARUOTEQ(330,4)

ARUOTEQ(1,1) = BA_
ARUOTEQ(1,2) = CA_
ARUOTEQ(1,3) = FI_
ARUOTEQ(1,4) = GE_

ARUOTEQ(2,1) = BA_
ARUOTEQ(2,2) = CA_
ARUOTEQ(2,3) = FI_
ARUOTEQ(2, 4) = MI_


....

...

...

ARUOTEQ(330,1) =ro_
ARUOTEQ(330,2) = to_
ARUOTEQ(330,3) = ve_
ARUOTEQ(330, 4) = nz_




come puoi notare il numerello con il quale volevi differenziare i tuoi 330 array da una sola dimensione e che avevi scritto dopo la Q di Ruote è andato a finire come indice di un 'array a due dimensioni , come vedi si è andato a nascondere dietro la prima parentsi tonda.


quindi invece di avere 330 array diversi come volevi fare tu e come era impossibile procedere ora sono divetati un array solo ma a 2 dimensini anziche una.

ora per ottenere un array a 2 dimensioni invece del codice che hai scritto si poteva usare questo altro sistema

Codice:
Dim aNumDaSvil
  Dim aRuoteq


  aNumDaSvil  = Array  ( 0,1,2,3,4,5,6, 7, 8, 9,10,11)

  aRuoteq= SviluppoIntegrale (  aNumDaSvil  ,4)

Grazie Giggio, ora il quadro mi è leggermente più chiaro...

Solo che non riesco ancora a capire come poter gestire un array bidimensionale...

Ad esempio...

al posto di aRuote1 qui sotto...

Codice:
Sub AnalisiLunghetteFromSceglinumeri1(Inizio,Fine,aRuote1,Sorte,idFiltro,qIncr,bPrimaEstrFissa,nDistanza,nclasse,alunghette1)

basta che adesso ci metta

ARUOTEQ ???

:unsure:
 

Giggio

Super Member >PLATINUM<
E' si vede come è chiaro ... un cristallo :) .... eccoti l'esempio ...

Codice:
Option Explicit
Sub Main

  ' tutte le dim si fanno all'inizio !!! e non è la prima volta che te lo dico
  Dim aNumDaSvil
  Dim aRuoteq
  Dim sLunghetta
  Dim aNumeriLunghetta
  Dim k , j
  ReDim aRuote(4)

  Dim nSorte
  Dim nRit , nRitMax ,nIncrRit ,  nFrq


  nSorte = 2 ' crca la sorte di ambo


  '=============================================
  ' chiede una lunghetta all'utente
  sLunghetta = InputBox ("Inserire la lunghetta da analizzare separando i numeri con la virgola come nella lunghetta di esempio.La quantita di numeri è a discrezione" , "Inserisci lunghetta" , "1,2,3,4,5")
  aNumeriLunghetta = Split( sLunghetta , ",")


  ' se la lunghetta contiene una quantita coerente di numeri
  If UBound( aNumeriLunghetta) >= nSorte  Then

     ' costruisce le combinazioni di 4 ruote con tutte le 11 possibili
     aNumDaSvil  = Array  ( 0,1,2,3,4,5,6, 7, 8, 9,10,12)
     aRuoteq= SviluppoIntegrale (  aNumDaSvil  ,4)


    ' fa la statistica della lunghetta su tutte e 330 le possibili combinazioni di ruote
    For k = 1 To 330
          ' sicoome la funzione per la statistica nel parametro ruote vule un array ad una sola dimensione
          ' dinamicamente lo alimento copiando la combinazione di ruote dall'array a due dimensioni alimentato prima
          ' di volta in volta prendo uan delle 330 combinazioni
        
          For j  =1 To 4       

             aRuote(j) = aRuoteq(k , j)
          Next 
         
          Call StatisticaFormazione ( aNumeriLunghetta   , aRuote,nSorte ,nRit,nRitMax , nIncrRit ,nFrq , EstrazioneIni  , EstrazioneFin)
        
          Call Scrivi ( StringaRuote (aRuote) & " - " & "Rit : " & FormatSpace ( nRit , 5 ,True )  &  " RitMax : " & FormatSpace ( nRitMax , 5 ,True )   &  " IncrRitMax : " & FormatSpace ( nIncrRit , 5 ,True )   &   " Freq : " & FormatSpace ( nFrq , 5 ,True )  )
        
    Next
  

End If

End Sub
 
Ultima modifica:

lotto_tom75

Advanced Premium Member
E' si vede come è chiaro ... un cristallo :) .... eccoti l'esempio ...

Codice:
Option Explicit
Sub Main

  ' tutte le dim si fanno all'inizio !!! e non è la prima volta che te lo dico
  Dim aNumDaSvil
  Dim aRuoteq
  Dim sLunghetta
  Dim aNumeriLunghetta
  Dim k , j
  ReDim aRuote(4)

  Dim nSorte
  Dim nRit , nRitMax ,nIncrRit ,  nFrq


  nSorte = 2 ' crca la sorte di ambo


  '=============================================
  ' chiede una lunghetta all'utente
  sLunghetta = InputBox ("Inserire la lunghetta da analizzare separando i numeri con la virgola come nella lunghetta di esempio.La quantita di numeri è a discrezione" , "Inserisci lunghetta" , "1,2,3,4,5")
  aNumeriLunghetta = Split( sLunghetta , ",")


  ' se la lunghetta contiene una quantita coerente di numeri
  If UBound( aNumeriLunghetta) >= nSorte  Then

     ' costruisce le combinazioni di 4 ruote con tutte le 11 possibili
     aNumDaSvil  = Array  ( 0,1,2,3,4,5,6, 7, 8, 9,10,11)
     aRuoteq= SviluppoIntegrale (  aNumDaSvil  ,4)


    ' fa la statistica della lunghetta su tutte e 330 le possibili combinazioni di ruote
    For k = 1 To 330
          ' sicoome la funzione per la statistica nel parametro ruote vule un array ad una sola dimensione
          ' dinamicamente lo alimento copiando la combinazione di ruote dall'array a due dimensioni alimentato prima
          ' di volta in volta prendo uan delle 330 combinazioni
      
          For j  =1 To 4     

             aRuote(j) = aRuoteq(k , j)
          Next
       
          Call StatisticaFormazione ( aNumeriLunghetta   , aRuote,nSorte ,nRit,nRitMax , nIncrRit ,nFrq , EstrazioneIni  , EstrazioneFin)
      
          Call Scrivi ( StringaRuote (aRuote) & " - " & "Rit : " & FormatSpace ( nRit , 5 ,True )  &  " RitMax : " & FormatSpace ( nRitMax , 5 ,True )   &  " IncrRitMax : " & FormatSpace ( nIncrRit , 5 ,True )   &   " Freq : " & FormatSpace ( nFrq , 5 ,True )  )
      
    Next


End If

End Sub

Grazie infinite Giggio! Ora mi leggo e rileggo... questo tuo chiarissimo e interessantissimo esempio fino a che non l'ho assimilato... per bene... 🙏 (y)👏👌🙂
 

Ultima estrazione Lotto

  • Estrazione del lotto
    giovedì 28 marzo 2024
    Bari
    49
    73
    67
    86
    19
    Cagliari
    64
    36
    37
    02
    04
    Firenze
    66
    27
    44
    90
    17
    Genova
    09
    44
    78
    85
    19
    Milano
    70
    14
    47
    38
    27
    Napoli
    80
    29
    28
    45
    39
    Palermo
    54
    59
    78
    47
    62
    Roma
    17
    22
    49
    52
    88
    Torino
    71
    35
    75
    74
    60
    Venezia
    40
    84
    02
    63
    29
    Nazionale
    08
    13
    44
    69
    85
    Estrazione Simbolotto
    Firenze
    06
    35
    16
    18
    05
Alto