Novità

Comando per impartire lo start del fulmine via code...

embhe qual'è il problema
tu parti con un array di x elementi cioè tutti quelli presenti nella riga del tuo file , conosci il valore di X con ubound.
L'array lo ottieni con la funzione splitbychar.
Conoscendo il numero di elementi iniziale non devi far altr oche fare un ciclo , magari un ciclo do while dolve la condizione del while
imponga di continuare finche x (cioè il valore di elementi iniziale non raggiunge un certo valore piu piccolo da te definito)

all'interno del ciclo la prima riga di codice saraà quella che trasforma il tuo array in una stringa
poi ci sara una riga che azzerera l'elemento X nell'array
poi ci sara quella che decrementa x
il ciclo continua finche x è >= al valore da te definito.
 
inizia a fare uno script daccapo come esercitazione che parte con una riga fissa preimpostata diciamo di 30 numeri e che ad ogni passaggio venga stampata finche non diventa di 5 numeri.
Ringrazzia che non ti mando in giro per il forum di lottoced portando vasi di coccio da 20 litri l'uno solo con la forza delel dita :-)
 
inizia a fare uno script daccapo come esercitazione che parte con una riga fissa preimpostata diciamo di 30 numeri e che ad ogni passaggio venga stampata finche non diventa di 5 numeri.
Ringrazzia che non ti mando in giro per il forum di lottoced portando vasi di coccio da 20 litri l'uno solo con la forza delel dita :)

provo a farlo in diretta... rispondendoti or ora maestro Shifu :).

Codice:
Option Explicit
Sub Main

Dim file
ReDim aRighe(0)
ReDim aNum(0)
Dim y
Dim numeroformazionirandom
Dim quantipassaggi
Dim classe
Dim aretcol
Dim formazioneridotta

file = ".\file.txt"
scrivifile file, "1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30"
CloseFileHandle(file)

Dim vettorenumeri

Call Messaggio("Lettura file di testo")
      Call LeggiRigheFileDiTesto(file,aRighe)
 
      For y = 0 To UBound(aRighe)
      If aRighe(y) <> "" Then
 
 
     Call SplitByChar("." & aRighe(y),".",vettorenumeri)
     end if
next



for quantipassaggi=1 to 10

For numeroformazionirandom = 1 To 1

classe = ubound(vettorenumeri)-2
Call GetColonnaCasuale(Classe,aretcol,vettorenumeri)

formazioneridotta = stringanumeri(aretcol)

if fileesistente(file) then

call eliminafile(file)

end if

scrivifile file,formazioneridotta
closefilehandle(file)

next

next

 
End Sub
 
Ultima modifica:
provo a farlo in diretta... rispondendoti or ora maestro Shifu :).

Codice:
Option Explicit
Sub Main

Dim file
ReDim aRighe(0)
ReDim aNum(0)
Dim y
Dim numeroformazionirandom
Dim quantipassaggi
Dim classe
Dim aretcol
Dim formazioneridotta

file = ".\file.txt"
scrivifile file, "1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30"
CloseFileHandle(file)

Dim vettorenumeri

Call Messaggio("Lettura file di testo")
      Call LeggiRigheFileDiTesto(file,aRighe)
 
      For y = 0 To UBound(aRighe)
      If aRighe(y) <> "" Then
 
 
     Call SplitByChar("." & aRighe(y),".",vettorenumeri)
     end if
next



for quantipassaggi=1 to 10

For numeroformazionirandom = 1 To 1

classe = ubound(vettorenumeri)-2
Call GetColonnaCasuale(Classe,aretcol,vettorenumeri)

formazioneridotta = stringanumeri(aretcol)

if fileesistente(file) then

call eliminafile(file)

end if

scrivifile file,formazioneridotta
closefilehandle(file)

next

next

 
End Sub

Niente da fare... venerabile Shifu :( la classe non mi viene ridotta... Ha mica un raviolo al vapore che le avanza? 🐼
 
Ho provato anche con do while...

Codice:
Option Explicit
Sub Main

Dim file
ReDim aRighe(0)
ReDim aNum(0)
Dim y
Dim vettorenumeri

file = ".\file.txt"
ScriviFile file, "1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30"
CloseFileHandle(file)



Call Messaggio("Lettura file di testo")
      Call LeggiRigheFileDiTesto(file,aRighe)
 
      For y = 0 To UBound(aRighe)
      If aRighe(y) <> "" Then
 
 
     Call SplitByChar("." & aRighe(y),".",vettorenumeri)
     End If
Next

Dim quantipassaggi

Dim classe

Dim aretcol

Dim formazioneridotta

Dim numeroformazionirandom

'For quantipassaggi=1 To 5

Do While classe >= 5

Call Messaggio("Lettura file di testo")
      Call LeggiRigheFileDiTesto(file,aRighe)
  
      For y = 0 To UBound(aRighe)
      If aRighe(y) <> "" Then
  
 
     Call SplitByChar("." & aRighe(y),".",vettorenumeri)
     End If
Next

classe = Int(UBound(vettorenumeri)-2)

For numeroformazionirandom = 1 To 1

'classe = UBound(vettorenumeri)-2

Call GetColonnaCasuale(classe,aretcol,vettorenumeri)

formazioneridotta = StringaNumeri(aretcol)

If FileEsistente(file) Then

Call EliminaFile(file)

End If
Scrivi formazioneridotta
ScriviFile file,formazioneridotta
CloseFileHandle(file)

'Next

Next

Loop

 
End Sub

Ma nisba... 😑🐼
 
Ultima modifica:
ovvio non hai fatto nulla di quello che ho detto ..
ti o detto di usare cicli for ? ti ho detto di aprire e chiudere file ? Io non è che ti voglio insegnare per forza bene inteso ma se vuoi che te lo insegno io devi fare come dico io non come ti dice la testa a te .. completa i lcodice ad ogni passaggi odeve stampare i numeri dell'array che manoi mano decresce.

Codice:
Option Explicit
Sub Main
 
  Dim sRiga , x , aNumeri
 
  sRiga = "1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30"
 
  Call SplitByChar(sRiga ,"." , aNumeri )
  x = ?
  Do
  ?
  ?
  ?
  Loop While x >= 5
 
End Sub
 
ovvio non hai fatto nulla di quello che ho detto ..
ti o detto di usare cicli for ? ti ho detto di aprire e chiudere file ? Io non è che ti voglio insegnare per forza bene inteso ma se vuoi che te lo insegno io devi fare come dico io non come ti dice la testa a te .. completa i lcodice ad ogni passaggi odeve stampare i numeri dell'array che manoi mano decresce.

Codice:
Option Explicit
Sub Main
 
  Dim sRiga , x , aNumeri
 
  sRiga = "1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30"
 
  Call SplitByChar(sRiga ,"." , aNumeri )
  x = ?
  Do
  ?
  ?
  ?
  Loop While x >= 5
 
End Sub

Codice:
Option Explicit
'completa il codice ad ogni passaggio deve stampare i numeri dell'array che manoi mano decresce.
Sub Main
   Dim sRiga,x,aNumeri
   Dim Classe
   Dim aretcol
   Dim numeroformazionirandom
   Dim formazioneridotta
   sRiga = "1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30"
   Call SplitByChar(sRiga,".",aNumeri)
   x = UBound(aNumeri) 
   Do
      x = x - 1
     
      Classe = x
      For numeroformazionirandom = 1 To 1

         Call GetColonnaCasuale(Classe,aretcol,aNumeri)

         formazioneridotta = StringaNumeri(aretcol)
    
         Scrivi formazioneridotta
      
      Next
   Loop While x >= 5
End Sub

"Grazie non ho fame" 🙏😉🐹🐼
 
senti Tom , devi scrivere il codice al posto dei punti intewrrogativi , quindi 4 linee di codice , che tra l'altro ti ho suggerito prima
Non devi fare altro.
Al massimo cambia la stringa e falla partire con 0.1.2....
 
senti Tom , devi scrivere il codice al posto dei punti intewrrogativi , quindi 4 linee di codice , che tra l'altro ti ho suggerito prima
Non devi fare altro.
Al massimo cambia la stringa e falla partire con 0.1.2....

adesso credevo andasse bene... :eek: l'unica cosa di diverso dall'attesa... è che mi riduce la riga fino a classe 4 anzichè 5... :unsure:

Codice:
Option Explicit
'completa il codice ad ogni passaggio deve stampare i numeri dell'array che manoi mano decresce.
Sub Main
   Dim sRiga,x,aNumeri
   Dim Classe
   Dim aretcol
   Dim numeroformazionirandom
   Dim formazioneridotta
   sRiga = "0.1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30"
   Call SplitByChar(sRiga,".",aNumeri)
   x = UBound(aNumeri)
   Do
    
      x = x - 1
    
      Classe = x
    
      For numeroformazionirandom = 1 To 1

         Call GetColonnaCasuale(Classe,aretcol,aNumeri)

         formazioneridotta = StringaNumeri(aretcol)
   
         Scrivi formazioneridotta
     
      Next
   Loop While x >= 5
End Sub
 
non va bene per niente .. poi il tuo ciclo for 1 to 1 è una chicca... senza contare che la stringa inziale viene sostituita dalla formazione casuale .. chi ti ha detto di fare cosi ? Questo è un esempio che serve nella speranza di farti capire .. percio devi completarlo come richiesto
 
non va bene per niente .. poi il tuo ciclo for 1 to 1 è una chicca... senza contare che la stringa inziale viene sostituita dalla formazione casuale .. chi ti ha detto di fare cosi ? Questo è un esempio che serve nella speranza di farti capire .. percio devi completarlo come richiesto

Codice:
Option Explicit
'completa il codice ad ogni passaggio deve stampare i numeri dell'array che manoi mano decresce.
Sub Main
   Dim sRiga,x,aNumeri
   Dim Classe
   Dim aretcol
   Dim numeroformazionirandom
   Dim formazioneridotta
   sRiga = "0.1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30"
   Call SplitByChar(sRiga,".",aNumeri)
   x = UBound(aNumeri)
   Do
    
      x = x - 1
    
      Classe = x
    

         Call GetColonnaCasuale(Classe,aretcol,aNumeri)

         formazioneridotta = StringaNumeri(aretcol)
   
         Scrivi formazioneridotta
     

   Loop While x >= 5
End Sub

Come faccio a ridurre ubound senza riformare la classe in modo random o integrale? :unsure:
 
secondo te avresti sostituito il codice a quell iche erano i ? nel mio script ? dentro al ciclo mi risulta ci fossero solo 3 righe .. tutte lae altre variabili che hai messo che c'entrano ?
 
devi trasformare in codice queste operazioni

all'interno del ciclo la prima riga di codice saraà quella che trasforma il tuo array in una stringa (e la stampa a video)
poi ci sara una riga che azzerera l'elemento X nell'array
poi ci sara quella che decrementa x
il ciclo continua finche x è >= al valore da te definito.
 
Provo a sostituire solo quei tre ok... o_O😬🥴

te lo posto anche se ovviamente non funzia...

ho riportato alla lettera i 3 punti anche se l'unico che ho capito e funzia è la stampa a video di aNumeri

Codice:
Option Explicit
'completa il codice ad ogni passaggio deve stampare i numeri dell'array che manoi mano decresce.
'all'interno del ciclo la prima riga di codice saraà quella che trasforma il tuo array in una stringa (e la stampa a video)
'poi ci sara una riga che azzerera l'elemento X nell'array
'poi ci sara quella che decrementa x
'il ciclo continua finche x è >= al valore da te definito.
Sub Main
   Dim sRiga,x,aNumeri
   sRiga = "1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30"
   Call SplitByChar(sRiga,".",aNumeri)
   x = UBound(aNumeri)
   Do
      Scrivi StringaNumeri(aNumeri)
      x = 0
      x = x - 1
   Loop While x >= 5
End Sub
 
x = 0
x = x - 1

Lottotommino caro ... mi vuoi fare arrabbiare ? Che diavolo è x = 0 ? a che serve ? Hai provato ad elaborare il codice a mente che valore ha x quando eseguela riga loop while ?
 
x = 0
x = x - 1

Lottotommino caro ... mi vuoi fare arrabbiare ? Che diavolo è x = 0 ? a che serve ? Hai provato ad elaborare il codice a mente che valore ha x quando eseguela riga loop while ?

Niente non ci arrivo... 😵😱 deve essere il merlot... (speriamo che sia quello...) 🍷🍷🍷

Ci riprovo semmai domani... 🙄

Grazie mille comunque Maestro Shifu 🙏🐹🐼
 
Codice:
Option Explicit
Sub Main
  
  Dim sRiga , x , aNumeri
  
  sRiga = "0.1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30" 
  
  Call SplitByChar(sRiga ,"." , aNumeri )
  
  x = UBound (aNumeri)
  Do 
     Call Scrivi (StringaNumeri( aNumeri ))
     aNumeri (x) = 0
     x = x -1 
  Loop While x >= 5 
  
End Sub
 
Vai Luigi,
il ramoscello di ciliegio lo teni a portata di mano? nel caso lo avessi lasciato a casa ti passo il mio 🌂.
Stavolta si merita un 4 - - ed un lavoro meno cervellotico 🧹🪣 che lo ripaghi dell'impegno allo studio.
Ciao Tom :p:p:p
 

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

Ultimi Messaggi

Indietro
Alto