Novità

primi passi

Come si vede ... nel messaggio #41

è una linea quella che serve per filtrare le estrazioni alla data del Maggio del 1955.

Quindi lo script con l'aggiunta di questa linea ... e l'istruzione per ordinare gli Estratti di Bari

dal più piccolo al più grande diventa

Codice:
 [B][COLOR=#0000c0]Option Explicit[/COLOR][/B]
  [B][COLOR=#0000c0]Sub [/COLOR][/B][B][COLOR=#800080]Main[/COLOR][/B]
  [B][COLOR=#0000c0]Dim[/COLOR][/B] [B][COLOR=#ff00ff]E[/COLOR][/B],[B][COLOR=#ff00ff]R[/COLOR][/B],[B][COLOR=#ff00ff]P[/COLOR][/B],[B][COLOR=#ff00ff]N[/COLOR][/B](5)
  [B][COLOR=#0000c0]For[/COLOR][/B] [B][COLOR=#ff00ff]E[/COLOR][/B] [B][COLOR=#ff0000]=[/COLOR][/B] 1 [B][COLOR=#0000c0]To[/COLOR][/B] [B][COLOR=#800080]EstrazioneFin[/COLOR][/B]
  [B][COLOR=#0000c0]If[/COLOR][/B]([B][COLOR=#0000c0]Mid[/COLOR][/B]([B][COLOR=#800080]DataEstrazione[/COLOR][/B]([B][COLOR=#ff00ff]E[/COLOR][/B]),4,2) [B][COLOR=#ff0000]=[/COLOR][/B] "[COLOR=#ff8000]05[/COLOR]") [B][COLOR=#0000c0]And[/COLOR][/B]([B][COLOR=#0000c0]Mid[/COLOR][/B]([B][COLOR=#800080]DataEstrazione[/COLOR][/B]([B][COLOR=#ff00ff]E[/COLOR][/B]),7,4) [B][COLOR=#ff0000]=[/COLOR][/B] "[COLOR=#ff8000]1955[/COLOR]") [B][COLOR=#0000c0]Then[/COLOR][/B]
  [B][COLOR=#800080]Scrivi[/COLOR][/B] "[COLOR=#ff8000][[/COLOR]" [B][COLOR=#ff0000]&[/COLOR][/B] [B][COLOR=#ff00ff]E[/COLOR][/B] [B][COLOR=#ff0000]&[/COLOR][/B] "[COLOR=#ff8000]] [/COLOR]" [B][COLOR=#ff0000]&[/COLOR][/B] [B][COLOR=#800080]DataEstrazione[/COLOR][/B]([B][COLOR=#ff00ff]E[/COLOR][/B]) [B][COLOR=#ff0000]&[/COLOR][/B] [B][COLOR=#0000c0]Space[/COLOR][/B](2) ,[B][COLOR=#ff00ff]True[/COLOR][/B], [B][COLOR=#ff00ff]False[/COLOR][/B]
  [B][COLOR=#0000c0]For[/COLOR][/B] [B][COLOR=#ff00ff]R[/COLOR][/B] [B][COLOR=#ff0000]=[/COLOR][/B] 1 [B][COLOR=#0000c0]To[/COLOR][/B] 1
  [B][COLOR=#0000c0]If[/COLOR][/B] [B][COLOR=#ff00ff]R[/COLOR][/B] [B][COLOR=#ff0000]<>[/COLOR][/B] 11 [B][COLOR=#0000c0]Then[/COLOR][/B] [COLOR=#008000]' Salta la Ruota Tutte[/COLOR]
  [B][COLOR=#800080]Scrivi[/COLOR][/B] [B][COLOR=#800080]SiglaRuota[/COLOR][/B]([B][COLOR=#ff00ff]R[/COLOR][/B]),[B][COLOR=#ff00ff]True[/COLOR][/B],[B][COLOR=#ff00ff]False[/COLOR][/B]
  [B][COLOR=#0000c0]For[/COLOR][/B] [B][COLOR=#ff00ff]P[/COLOR][/B] [B][COLOR=#ff0000]=[/COLOR][/B] 1 [B][COLOR=#0000c0]To[/COLOR][/B] 5
  [B][COLOR=#ff00ff]N[/COLOR][/B]([B][COLOR=#ff00ff]P[/COLOR][/B]) [B][COLOR=#ff0000]=[/COLOR][/B] [B][COLOR=#800080]Estratto[/COLOR][/B]([B][COLOR=#ff00ff]E[/COLOR][/B],[B][COLOR=#ff00ff]R[/COLOR][/B],[B][COLOR=#ff00ff]P[/COLOR][/B])
  [COLOR=#008000]'Scrivi FormatSpace(N(P),4,True),False,False[/COLOR]
  [B][COLOR=#0000c0]Next[/COLOR][/B]
  [B][COLOR=#800080]OrdinaMatrice[/COLOR][/B] [B][COLOR=#ff00ff]N[/COLOR][/B],[B][COLOR=#ff00ff]False[/COLOR][/B]
  [B][COLOR=#800080]Scrivi[/COLOR][/B] [B][COLOR=#0000c0]Space[/COLOR][/B](2) [B][COLOR=#ff0000]&[/COLOR][/B] [B][COLOR=#800080]StringaNumeri[/COLOR][/B]([B][COLOR=#ff00ff]N[/COLOR][/B],[B][COLOR=#0000c0]Space[/COLOR][/B](2),[B][COLOR=#ff00ff]True[/COLOR][/B])
  [B][COLOR=#0000c0]End[/COLOR][/B] [B][COLOR=#0000c0]If[/COLOR][/B] [COLOR=#008000]'Fine del Test Condizionale[/COLOR]
  [B][COLOR=#0000c0]Next[/COLOR][/B]
  [B][COLOR=#800080]Scrivi[/COLOR][/B] [B][COLOR=#0000c0]String[/COLOR][/B](22,"[COLOR=#ff8000]=[/COLOR]"),[B][COLOR=#ff00ff]True[/COLOR][/B] [COLOR=#008000]' Separa le Estrazioni.[/COLOR]
  [B][COLOR=#0000c0]End[/COLOR][/B] [B][COLOR=#0000c0]If[/COLOR][/B]
  [B][COLOR=#0000c0]Next[/COLOR][/B]
  [B][COLOR=#0000c0]End [/COLOR][/B][B][COLOR=#0000c0]Sub

E qui mi fermo ... pensando di aver fornito molto di cui fare esercizio.

:) Buona giornata a tutte/i.[/COLOR][/B]
 
OK Joe91 puoi fermarti devo assimilare e grazie del tempo dedicatomi .Se hai un po di tempo dai uno sguardo al mio post a pensar male .
Grazie
Ciao Eugenio .
 
genios;n1889085 ha scritto:
OK Joe91 puoi fermarti devo assimilare e grazie del tempo dedicatomi .Se hai un po di tempo dai uno sguardo al mio post a pensar male .
Grazie
Ciao Eugenio .


Eugenio ... il distratto-impaziente.

Se avessi letto cosa ti ho risposto al messaggio #36 ... con attenzione,

avresti notato che qui ... tu non mi avevi chiesto di ordinare ... i numeri.

Se ho proposto tutto quello che da quel messaggio .. segue, forse c'era una ragione.

Comunque sia ... ora che hai insistito anche altrove hai anche la riposta di Mike.

Non mi rimane che continuare ... per chi ne avesse interesse nell'opera che mi avevi chiesto di sopendere.

Abbiamo visto, cosa ne succede dei numeri dopo che l' interprete ha eseguito OrdinaMatrice.

Dunque ripristinando la visualizzazione del lottrone all'atto del suo preleivo dall'Archivio e...

sapendo (avendo stabilito) che il più piccolo degli Estratti è contenuto in N(1) ed il maggiore in N(5);

Scrivendo semplicemente N(1) ed N(5) avremo completato la ricerca/simulazione

del metodo che sie era ipotizzato volere con questo script.

Codice:
Option Explicit
Sub Main
 Dim E,R,P,N(5)
 For E = 1 To EstrazioneFin
  If(Mid(DataEstrazione(E),4,2) = "05") And(Mid(DataEstrazione(E),7,4) = "1955") Then
   Scrivi "[" & E & "] " & DataEstrazione(E) & Space(2),True,False
   For R = 1 To 1
    If R <> 11 Then' Salta la Ruota Tutte
     Scrivi SiglaRuota(R),True,False
     For P = 1 To 5
      N(P) = Estratto(E,R,P)
      Scrivi FormatSpace(N(P),4,True),False,False
     Next
     OrdinaMatrice N,False
     'Scrivi Space(2) & StringaNumeri(N,Space(2),True)
     Scrivi Space(2) & Format2(N(1)) & "." & Format2(N(5)),True
    End If'Fine del Test Condizionale
   Next
   Scrivi String(22,"="),True' Separa le Estrazioni.
   End If
  Next
End Sub

Che produce:

Codice:
[4401] 07.05.1955  BA  90  29  85  87   8  [B]08.90[/B]
======================
[4402] 14.05.1955  BA  43  66  30  63  16  [B]16.66[/B]
======================
[4403] 21.05.1955  BA  46  64  76  14  45  [B]14.76[/B]
======================
[4404] 28.05.1955  BA  23  81  42  41  64  [B]23.81[/B]
======================

E con questo penso sia dimostrato ... che lo script è abbastanza versatile per essere adattato ...

all'esigenza della richiesta altrove presente ... modificando/inserendo un paio di linee di comando.

:) Vedremo come.
 
Ultima modifica:
Prima cosa rimettiamo apposto:

For E = EstrazioneFin - 9 To EstrazioneFin

e

For R = 1 To 12

ed osserviamo l'importanza di questa riga:

If R <> 11 Then ' Salta la Ruota Tutte

se fosse scritta

If R = MI_ Then


Per esempio ... lascerebbe eseguire la parte seguente dello script ... solo in occasione ... R = 5 = Milano.

Quindi come bene ha fatto Mike ... basta inserire i test per le 3 ruote desiderate ... separati da "Or"


genios;n1888768 ha scritto:
Si potrebbe fare uno script che per ogni estrazione prenda i cinque estratti di ogni ruota ( cioè BA NA PA ) li metta in una variabile di quindici indici e li metta in ordine dal più pi al più grande e li stampi a video .

Ciao eugenio

Come da richiesta.
If (R = BA_) Or (R = NA_) Or (R = PA_) Then

Lo Script ora è così:

Codice:
[/COLOR]
Option Explicit
Sub Main
 Dim E,R,P,N(5)
 For E = EstrazioneFin - 9 To EstrazioneFin
  Scrivi "[" & E & "] " & DataEstrazione(E) & Space(2),True
  For R = 1 To 12
   If (R = BA_) Or (R = NA_) Or (R = PA_) Then
    If R <> 11 Then' Salta la Ruota Tutte
     Scrivi SiglaRuota(R),True,False
     For P = 1 To 5
      N(P) = Estratto(E,R,P)
      Scrivi FormatSpace(N(P),4,True),False,False
     Next
     OrdinaMatrice N,False
     'Scrivi Space(2) & StringaNumeri(N,Space(2),True)
     Scrivi Space(2) & Format2(N(1)) & "." & Format2(N(5)),True
    End If
   End If' ' Fine Selezione Ruote
  Next
  Scrivi String(22,"="),True' Separa le Estrazioni.
 Next
End Sub

:)
 
Ora dunque per confronto col precedente prima di illustare le pochissime modifiche ... vi propongo lo script:

Codice:
Option Explicit
Sub Main
 Dim E,K,R,P,N(15)
 For E = EstrazioneFin - 9 To EstrazioneFin
  K = 0
  Scrivi "[" & E & "] " & DataEstrazione(E) & Space(2),True
  For R = 1 To 12
   If (R = BA_) Or (R = NA_) Or (R = PA_) Then
    If R <> 11 Then' Salta la Ruota Tutte
     Scrivi SiglaRuota(R),True,False
     For P = 1 To 5
      K = K + 1
      N(K) = Estratto(E,R,P)
      Scrivi FormatSpace(N(K),4,True),False,False
     Next
     Scrivi
    End If
   End If' ' Fine Selezione Ruote
  Next
  OrdinaMatrice N,False
  Scrivi Space(2) & StringaNumeri(N,".",True)
  Scrivi String(22,"="),True' Separa le Estrazioni.
 Next
End Sub

Si vede che ho modificato la Dim per N(e le sue 15 posizioni) ed ho inserito K ... per contarle.

"K" va azzerato ad ogni estrazione altrimenti incrementerebbe di 15 in 15.

E siamo alla richiesta ... la prossima volta ... il plus rischiesto.

:) Buona serata a tutte/i.
 
Prima di proseguire e completare ... fornendo la soluzione a quanto richiesto.

Sottolineo che non vi è stata la richiesta di una soluzione ad un problema ...

MA DIRETTAMENTE la proposta di una soluzione ... peraltro senza specificare bene la natura del problema.

Quindi solo al sesto messaggio si legge :

genios;n1890171 ha scritto:
ok cosi va bene mike ma sarebbe possibile mettere in uscita quali sono i numeri che si sono ripetuti nelle tre ruote ? facio l' esempio :


06.33.34.35.35.38.40.40.48.49.50.57.62.74 CA.FI.RO 9010 numeri ripetuti 35.35.40.40 ciao Eugenio

Pertanto ... secondo me l'algoritmo proposto e poi realizzato ... manualmente ... va bene,

ma per uno script è tanto complicato quanto poi impreciso ed insufficiente.

Ma do lo stesso una soluzione ... (ripeto: Per me ... appena sufficiente)

I numeri ordinati ed uguali ... sono consecutivi.

quindi aggiungendo :

Scrivi "Ripetuti : ",True,False
For K = 1 To 15
If N(K) = N(K - 1) Then Scrivi Format2(N(K)) & " ",True,False
Next

Si completa lo script di tutto quanto è necessario ad avere il risultato voluto.

Codice:
 Option Explicit
Sub Main
 Dim E,K,R,P,N(15)
 For E = EstrazioneFin - 9 To EstrazioneFin
  K = 0
  Scrivi "[" &  E & "] " &  DataEstrazione(E) & Space(2),True
  For R = 1 To 12
   If (R = BA_) Or (R = NA_) Or (R = PA_) Then
    If R <> 11 Then ' Salta la Ruota Tutte
     Scrivi SiglaRuota(R),True,False
     For P = 1 To 5
      K = K + 1
      N(K) = Estratto(E,R,P)
      Scrivi FormatSpace(N(K),4,True),False,False
     Next
     Scrivi
    End If
   End If ' Fine Selezione Ruote
  Next
  OrdinaMatrice N,False
  Scrivi Space(2) &  StringaNumeri(N,".",True)
  Scrivi "Ripetuti : ",True,False
  For K = 1 To 15
   If N(K) = N(K - 1) Then Scrivi Format2(N(K)) & " ",True,False
  Next
  Scrivi
  Scrivi String(45,"="),True ' Separa le Estrazioni.
 Next
End Sub

:)
 
Ultima modifica:
genios;n1890373 ha scritto:
Ok joe91 perfetto .

ciao Eugenio

Io dicevo ... appena sufficiente ... perche la struttura portante di questo script

meglio utilizzata, è in grado di processare oltre mille estrazioni in meno di un secondo,

permettendosi anche di sprecare del tempo a contare quante volte, i numeri sono ripetuti.

Codice:
Option Explicit

Sub Main
 Dim E,R,P,X,T
 T = Timer
 For E = EstrazioneFin - 999 To EstrazioneFin
  ReDim N(90)
  Scrivi "[" & E & "] " & DataEstrazione(E) & Space(2),True
  For R = 1 To 12
   If (R = BA_) Or (R = NA_) Or (R = PA_) Then
    If R <> 11 Then ' Salta la Ruota Tutte
     'Scrivi SiglaRuota(R),True,False
     For P = 1 To 5
      X = Estratto(E,R,P)
      'Scrivi FormatSpace(X,4,True),False,False
      N(X) = N(X) + 1
     Next
     'Scrivi
    End If
   End If ' Fine Selezione Ruote
  Next
  Scrivi "Numeri Ripetuti (Volte) : ",True,False
  For X = 1 To 90
   If N(X) > 1 Then Scrivi Format2(X) & "(" & N(X) & ") ",True,False
  Next
  Scrivi
  Scrivi String(45,"="),True ' Separa le Estrazioni.
 Next
 Scrivi  Round (Timer-T,1) & "  Secondi. Script By Joe"
 End Sub

:) Buona serata.
 
Joe91;n1890653 ha scritto:
Io dicevo ... appena sufficiente ... perche la struttura portante di questo script

meglio utilizzata, è in grado di processare oltre mille estrazioni in meno di un secondo,

permettendosi anche di sprecare del tempo a contare quante volte, i numeri sono ripetuti.

Codice:
Option Explicit

Sub Main
Dim E,R,P,X,T
T = Timer
For E = EstrazioneFin - 999 To EstrazioneFin
ReDim N(90)
Scrivi "[" & E & "] " & DataEstrazione(E) & Space(2),True
For R = 1 To 12
If (R = BA_) Or (R = NA_) Or (R = PA_) Then
If R <> 11 Then ' Salta la Ruota Tutte
'Scrivi SiglaRuota(R),True,False
For P = 1 To 5
X = Estratto(E,R,P)
'Scrivi FormatSpace(X,4,True),False,False
N(X) = N(X) + 1
Next
'Scrivi
End If
End If ' Fine Selezione Ruote
Next
Scrivi "Numeri Ripetuti (Volte) : ",True,False
For X = 1 To 90
If N(X) > 1 Then Scrivi Format2(X) & "(" & N(X) & ") ",True,False
Next
Scrivi
Scrivi String(45,"="),True ' Separa le Estrazioni.
Next
Scrivi Round (Timer-T,1) & " Secondi. Script By Joe"
End Sub

:) Buona serata.

Bravo Joe !

Un saluto per Tutti

Buona visione :)


 
I miei studi matti e disperatissimi ( di Leopardiana memoria ) continuano mi serve quindi un aiuto :

vorrei inserire una funzione esterna alla Sub principale inserendo come funzione esterna le seguenti righe di codice :
Codice:
 For p= 1 To 5  
 n(p)=(Estratto(es,r1,p))  
 Next
Togliendo le sopra scritte righe di codice dallo script seguente :
Codice:
 Option Explicit  
     
 Sub Main  
     
 Dim n(5)  
 Dim es,r1,p  
 Dim ruote(1)  
     
 For es = EstrazioneFin - 100 To EstrazioneFin ' sostituisci il 100 se vuoi cambiare le lestrazioni da valutare  
 r1 = 1  
 For p= 1 To 5  
 n(p)=(Estratto(es,r1,p))  
 Next  
 Scrivi DataEstrazione(es) & " " & FormatSpace(NomeRuota(r1),5) &Format2( n(1)) & "." &Format2(  n(2)) & "." &Format2(  n(3)) & "." &Format2(  n(4)) & "." &Format2(  n(5)),1  
     
 Next  
     
 End Sub
e inserendole quindi come una funzione esterna alla Sub principale . Sperando di essere stato chiaro . Ciao Eugenio
 
Ciao Eugenio ...

Ogni linea dello script ... si può intendere come "un comando"

e lo script nel suo complesso come una serie di comandi con i quali risolvere un problema.

Cioè, una soluzione codificata.

Un algoritmo risolutivo ...

(Premesso che lo sia ... Ovvero sia giusto, e faccia quanto deve e/o dovrebbe.

Senza errori ... di logica e/o nei calcoli).

Quindi cosa stai facendo ... Zibaldone a parte ... lo si deduce dallo script,

forse è ... cosa vorresti fare ... che si dovrebbe sapere per poterti aiutare.

Nello specifico "Estratto" pur inserito nello script si può considerare ... già esterno ...

è una "Routine" o una "Funzione" o un "Comando" che ...

viene "Chiamata" cioè eseguita (esternamente) ... e che in funzione dei parametri,

che per essa/o sono forniti ... va a "leggere" e restituisce "un numero" ...

tra tutti quelli presenti nell' Inventario.

Cioè un Estratto ... esattamente "come è" ... nel nome "il comando"

che con essa/o si va ad eseguire richiamando questa specifica Routine.

:)
 
Ultima modifica:
Ciao Joe91 grazie della risposta

HTML:
Nello specifico "Estratto" pur inserito nello script si può considerare ... già esterno ...

è una "Routine" o una "Funzione" o un "Comando" che ...

Quanto da te scritto sull' estratto lo avevo capito .Nel senso che la funzione estratto è una funzione esterna fatta da LuigiB per facilitare il compito a noi .Dietro la funzione estratto con i suoi parametri vi è una serie di comandi che noi non vediamo ma fanno il lavoro per cui sono stati diciamo progettati .Quindi gli script che noi facciamo ogni volta che incontrano la funzione estratto la stessa fa il lavoro per cui è stata progettata.
HTML:
Quindi cosa stai facendo ... Zibaldone a parte ... lo si deduce dallo script,

forse è ... cosa vorresti fare ... che si dovrebbe sapere per poterti aiutare.

Quello che vorrei fare e capire come si scrivono le funzioni esterne alla Sub principale . Allora ho pensato di inserire quelle poche righe di codice per la ricerca dei cinque estratti in una funzione esterna del semplice script per la ricerca degli estratti . Sempre che la cosa sia fattibile .

Ciao Eugenio
 
Ultima modifica:
Ciao Eugenio ...

Quindi chiari i limiti dell'area ... non rimane che giocare la partita

La "Sub" principale "Main" in genere senza parametri ... è lo "Script".

All'interno di esso ci sono comandi ... del Basic ... di Spaziometria (dei quali hai citato "Estratto") ...

ed altri definibili e/o "scrivibili" dall'utente.

Quando l'interprete del Basic ... "Legge" quella "Parola-Particolare"

cerca di eseguire le istruzioni che ad essa corrispondono "saltando" a quella

parte del programma dove ci sono le istruzioni ... per farlo.

Poi .... ritorna ... dov'era (Se c'è ....quella istruzione ... altrimenti è Errore di Sintassi / nei parametri ....)

Cioè cerca un sottoprogramma con il "Nome" e ... con quei parametri .... dunque lo esegue. Ritorna.

Quindi la struttura tipica è :

Codice:
Sub Main ()

  Call Esterna (con i vari-parametri)

 ... ALTRO ...

End Sub

Codice:
Sub Esterna (con i vari-parametri)

 ... viene eseguita questa parte di script esterna ...

End Sub  'Ritorna ad eseguire le istruzioni successive ... Altro.

Naturalmente i nomi devono essere "idonei" e non sovrapporsi ingenerando confusione.

Nel caso specifico "Estratto" ... c'è già ... non dovrebbe essere duplicato.

Dunque "Esterna" potrebbe essere quella parte di script ... richiamata molte volte ....

che potrebbe anche essere considerata, quasi un sinonimo, di "Funzione"

che appunto, in "Funzione", dei parametri e delle istruzioni in essa presenti, restituisce "un risultato".

Potrebbe essere per Esempio: "Fuori34" .... (se non ci fosse già "FuoriX" che già s'adatta al 34)

"TriangoloRettangolo" (con tre numeri) che potrebbe restituire True/False ... e/o ... qualsiasi altra idea.


:)
 
Ultima modifica:
Quindi se ho interpretato bene all' interno della Sub principale dovro' richiamare la funzione esterna con l' istruzione call :

quindi dando il nome alla funzione esterna cinqueestratti dovro all' interno della sub principale scrivere :

call cinqueestratti

mentre la funzione esterna

Sub cinqueestratti


For p= 1 To 5 n(p)=(Estratto(es,r1,p))
n(p)=(Estratto(es,r1,p))
Next
End sub

ma i parametri da inserire tra parentesi quali sono ?

Ciao Eugenio
 
Ultima modifica:
TITOLO: "CinqueEstratti"


Ciao Eugenio,

Come dicevo, gli intenti dovrebbe fornirli chi richiede ... ed in effetti senza sapere cosa si deve fare ... è difficile farlo.

Vedi da te stesso che se il 5 (cioè 5 estratti) viene interpretato come TUTTI ...

Questo "5" non è più necessario.

FInisce la necessità di considerarlo ... un parametro indispensabile.

Cioè da fornire ... necessariamente.

Ma ... andiamo con ordine. Per passettini redigendo uno script completo. Questo:

Codice:
Option Explicit

Sub Main

Dim E
Dim R

Dim P
Dim N(5)


E = EstrazioneFin
R = BA_

For P = 1 To 5
N(P) =(Estratto(E,R,P))
Next

Scrivi StringaNumeri(N)

End Sub


Come vedi .... in esso ci sono "blocchi" differenti

E_strazione ... e ...

R_uota sono dei parametri_necessari.

P è come da titolo: 5

Dunque adesso devi notare come "P" è prodotto localmente

E ... saranno necessari "5 Enne" ovvero ... N(5) per contenere i 5 Estratti.

Mentre E ed R sono i parametri (di cui hai fatto oggetto di richiesta) che DEVONO ESSERE FORNITI.

Ovvero sono le coordinate NECESSARIE per puntare esattamente ad una Estrazione ed in questa ...

ad una Ruota. MENTRE P non è Parametro necessario perchè leggeremo TUTTE e 5 le posizioni.

Chiaro tutto questo ... basta "spezzare" in due lo script ...

"estraendo" la Funzione "CinqueEstratti" dalla "Sub Main" in cui risiede.


:)
 
Ultima modifica:
genios;n1901561 ha scritto:
ma i parametri da inserire tra parentesi quali sono ?

Ciao Genios , do anche io il mio contributo per coadiuvare quanto ti ha gia spiegato Joe.
Le Sub e le Function esterne alla sub Main si scrivono quando e se servono non + che sia obbligatorio scriverle , pertanto i parametri da passare cambiano di volta in volta a seconda delle
esigenze , ci possono essere pure sub e function senza parametri , quelle con i parametri sono state progettate dallo scripter e sa lui quali parametri serviranno in quella circostanza.

per esempio se io ti dico facciamo una funzione che restituisca la somma di due numeri i parametri
di questa funzionzione potrebbbero essere proprio i 2 numeri da sommare

Codice:
Option Explicit
Sub Main
    Scrivi SommaNumeri (10 , 15)
End Sub

Function SommaNumeri (a , b )
    SommaNumeri = a + b
End Function


ora per vedere se hai capito ti esorto a fare questi 2 semplici esercizi.

1) Aggiungere una funzione che faccia il Prodotto di 2 numeri

2) Aggiungere una funzione che faccia il prodotto di due numeri e divida il risultato per un terzo numero.


ciao
 
Giusto per ...

... avevo scritto anche questo semplicissimo script che contiene alcune "Funzioni"

da cui trarre spunto ed esempio di come esse funzionino.

Codice:
Option Explicit
Sub Main
Dim L

L = 2 'Assegno il Valore 2 al Lato "L"
'
Scrivi Area(L)
Scrivi Volume(L)
'
Scrivi PiGreco
'
Scrivi Fuori41(1728) 'Nuova funzione
Scrivi FuoriX(1728,41)'Optional di serie

End Sub

Function Area(L)
Area = L * L
End Function
Function Volume(L)
Volume = L * L * L
End Function
Function PiGreco()
PiGreco = Round(22/7 ,2)'circa
End Function
Function Fuori41(L)
Do While L > 41
L = L - 41
Loop
Fuori41 = L
End Function

:)
 
X luigiB
HTML:
ora per vedere se hai capito ti esorto a fare questi 2 semplici esercizi.

1) Aggiungere una funzione che faccia il Prodotto di 2 numeri

Codice:
[B]Option[/B] [B]Explicit[/B]
[B]Sub[/B] [B]Main[/B]
    [B]Scrivi[/B] [B]MoltiplicaNumeri[/B] (10 , 15)
[B]End[/B] [B]Sub[/B]
 
[B]Function[/B] [B]MoltiplicaNumeri[/B] ([B]a[/B] , [B]b[/B] )
    [B]MoltiplicaNumeri[/B] [B]=[/B] [B]a[/B] [B]*[/B] [B]b[/B]
[B]End[/B] [B]Function[/B]

[HTML ] 2) Aggiungere una funzione che faccia il prodotto di due numeri e divida il risultato per un terzo numero.[/HTML]

Codice:
[B]Option[/B] [B]Explicit[/B]
[B]Sub[/B] [B]Main[/B]
    [B]Scrivi[/B] [B]MoltiplicaDividi[/B] (10 , 15, 2)
[B]End[/B] [B]Sub[/B]
 
[B]Function[/B] [B]MoltiplicaDividi[/B] ([B]a[/B] , [B]b[/B] , [B]c[/B]  )
   [B]MoltiplicaDividi[/B] [B]=[/B]  ([B]a[/B] [B]*[/B] [B]b[/B] )[B]/[/B] [B]c[/B]
[B]End[/B] [B]Function[/B]

Funzionano ma tornando alla mia funzione che parametri occorre adoperare se la cosa e fattibile ?

ciao Eugenio
 
Dato quanto spiegato sia da Joe che da me alla tua doamanda su quali parametri passare risponderei quelli che ritieni opportuni ...
 

Ultima estrazione Lotto

  • Estrazione del lotto
    giovedì 23 gennaio 2025
    Bari
    86
    50
    83
    38
    78
    Cagliari
    11
    36
    52
    31
    74
    Firenze
    56
    59
    86
    27
    84
    Genova
    03
    61
    53
    11
    38
    Milano
    13
    14
    79
    87
    47
    Napoli
    21
    90
    48
    55
    37
    Palermo
    56
    46
    59
    02
    53
    Roma
    74
    13
    07
    38
    77
    Torino
    27
    54
    62
    36
    81
    Venezia
    09
    14
    69
    28
    62
    Nazionale
    32
    73
    27
    11
    51
    Estrazione Simbolotto
    Bari
    36
    27
    19
    08
    24

Ultimi Messaggi

Indietro
Alto