Riprendo qui....
( post aperto a chiunque , ivi compresi Luigi e tutti i suoi alunni, me compreso )
sono ben accetti anche chiarimanti, suggerimenti e specifiche.
Come vedi, la formattazione/indentatura è sparita. Se provi a copiare il tuo listato in spaziometria e clicchi su Auto Formattazione codice vedrai che appariranno le indentature.
Queste, nello specifico dei costrutti servono ad identificare visivamente le sequenze delle operazione che esegue lo script.
Esempio con inserimento script nel post, dopo averlo formattato in spaziometria, copiato in Notebook e riportato tra i CODE del post ( nota la differnza visiva, che dà la possibilità di una diretta interpretazione del costrutto).
Spesso, molte richieste di modifiche vengono "inevase" perchè la non indentatura (cattiva presentazione) porta il lettore a dover copiare il tutto su spaziometria, per poi poterlo leggere, in maniera + chiara per cui considerato il poco tempo che si ha a disposizione, spesso si passa oltre.
Come vedi in questo costrutto ( costituito da una specifica Sub ) vi sono tre livelli di iterazione di cicli For ... next..
Senza l'indentatura, sarebbe meno evidente la loro identificazione e di conseguenza la lettura del significato operativo e sequenziale,degli stessi, cosa molto importante nella ideazione e creazione di un costrutto.
Spero di essere stato chiaro.
Ciao
( post aperto a chiunque , ivi compresi Luigi e tutti i suoi alunni, me compreso )
sono ben accetti anche chiarimanti, suggerimenti e specifiche.
Cinzia27;n2103356 ha scritto:Grazie, Claudio.
Spero che così vada bene.
Cinzia
Codice:Sub Main() ImpostaArchivio10ELotto(2) Dim nam(1),T,V,sommato(1) Dim nu(1),NuFr(90,5),NuAdd(1),aN(10),SFF(3),Nn(1) Ini = EstrazioniArchivioDL - 25 fin = EstrazioniArchivioDL 'pos = CInt(InputBox("Quale posizione voglio sommare",,1)) clp = InputBox("Quanti Colpi di Gioco",,1) For pos=1 To 5 'somma = InputBox("Quale sommativo voglio fare la somma",,14) 'smm = CInt(InputBox("Quante righe ",,1)) T = Array(T,"Info Estr"," Numeri Estrazione ","Pos.Est","Somm","Fre/casi","Num "," Esito ","Colpi","Verifica")' 9 titoli Call InitTabella(T,3) For es = Ini To fin casi = casi + 1 co = 0 es1 = es + 1 es2 = es1 + clp est = EstrattoDL(es,pos) '------- calcolo sommativo --------------- For sm = 1 To 90 co = co + 1 nu(1) = Fuori90(est + sm) ' estratto+ sommatico NuFr(co,1) = sm sf = SerieFreqDL (es1,es2,nu,1) ' frequente in 1 colpo If sf > 0 Then NuFr(co,2) = NuFr(co,2) + 1 End If Next Call OrdinaMatrice(NuFr,- 1,2) 'For i = 1 To smm Nn(1) = Fuori90(nu(1) + NuFr(1,1)) 'Next 'sommato(1) = Fuori90(EstrattoDL(es,pos) + somma) ReDim V(9)' se aumantano i titoli dell'array "T" aumentare questo valore V(1) = GetInfoEstrazioneDL(es) V(2) = StringaEstrattiDL(es) V(3) = pos & "°" & " - " & FormatSpace((est),2,-1) V(4) = "+ " & FormatSpace(NuFr(1,1),2,-1) V(5) = FormatSpace(NuFr(1,2),2,1) & "/" & casi & " Casi" V(6) = Nn(1) 'V(7) = MEN(1) sr = SerieRitardoDL(Ini,fin,Nn,1) Call VerificaEsitoDL (Nn,es+1,1,clp,Esito,colpi,estratti) V(7) = Esito V(8) = colpi & "°" V(9) = estratti 'V(10) = MEN(2) 'V(11) = MEN(3) 'V(12) = MEN(4) 'V(13) = MEN(5) 'V = Array(V,GetInfoEstrazioneDL(es),StringaEstrattiDL( es),somma & " + " & EstrattoDL(es,pos),pos,StringaNumeri(sommato),estr atti,colpi) Call AddRigaTabella(V) Next SetTableWidth ("100%") SetTableHeight ("100%") Call CreaTabellaOrdinabile(,,,0,,False,False) Next End Sub
Come vedi, la formattazione/indentatura è sparita. Se provi a copiare il tuo listato in spaziometria e clicchi su Auto Formattazione codice vedrai che appariranno le indentature.
Queste, nello specifico dei costrutti servono ad identificare visivamente le sequenze delle operazione che esegue lo script.
Esempio con inserimento script nel post, dopo averlo formattato in spaziometria, copiato in Notebook e riportato tra i CODE del post ( nota la differnza visiva, che dà la possibilità di una diretta interpretazione del costrutto).
Spesso, molte richieste di modifiche vengono "inevase" perchè la non indentatura (cattiva presentazione) porta il lettore a dover copiare il tutto su spaziometria, per poi poterlo leggere, in maniera + chiara per cui considerato il poco tempo che si ha a disposizione, spesso si passa oltre.
Codice:
Sub GetCipECiop(Inizio,Fine,aRuota,Colpi,Cip,Ciop) ' sub che somma
Dim arrAmbi
Dim k,i,e,idEstr
Dim bFound
Cip = 0
Ciop = 0
Call Sviluppoambi(arrAmbi) ' chiama sub che sviluppa gli ambi
For k = 1 To UBound(arrAmbi)
bFound = True
For idEstr = Inizio To Fine Step 9
ReDim aNumInGioco(10)
i = 5
For e = 1 To 5
i = i + 1
aNumInGioco(e) = Fuori90(Estratto(idEstr,aRuota(1),e) + arrAmbi(k,1))
aNumInGioco(i) = Fuori90(Estratto(idEstr,aRuota(1),e) + arrAmbi(k,2))
Next
If VerificaEsito(aNumInGioco,aRuota,idEstr + 1,2,Colpi) = False Then
bFound = False
'Call Scrivi ("Ambo non valido " & arrAmbi(k,1) & "-" & arrAmbi(k,2) )
Exit For
End If
Next
If bFound Then
Call Scrivi("Coppia di numeri che sommata all'estrazione base dia sempre almeno un ambo " & arrAmbi(k,1) & "-" & arrAmbi(k,2))
Call Scrivi("")
Call Scrivi(StringaNumeri(aNumInGioco))
Cip = arrAmbi(k,1)
Ciop = arrAmbi(k,2)
Exit For
End If
Next
End Sub
Come vedi in questo costrutto ( costituito da una specifica Sub ) vi sono tre livelli di iterazione di cicli For ... next..
Senza l'indentatura, sarebbe meno evidente la loro identificazione e di conseguenza la lettura del significato operativo e sequenziale,degli stessi, cosa molto importante nella ideazione e creazione di un costrutto.
Spero di essere stato chiaro.
Ciao
Ultima modifica: