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
    martedì 16 aprile 2024
    Bari
    49
    10
    76
    62
    26
    Cagliari
    42
    80
    16
    39
    65
    Firenze
    58
    22
    11
    86
    40
    Genova
    79
    14
    36
    51
    44
    Milano
    25
    27
    16
    77
    79
    Napoli
    70
    04
    51
    49
    71
    Palermo
    61
    65
    76
    53
    43
    Roma
    70
    86
    68
    80
    47
    Torino
    17
    71
    64
    72
    40
    Venezia
    22
    42
    39
    72
    30
    Nazionale
    83
    37
    81
    57
    78
    Estrazione Simbolotto
    Genova
    10
    14
    28
    18
    15
Alto