Oppure

Loading
21/10/11 1:39
TermYnator
No. Come puoi vedere, controldata è richiamata nella routine di immissione dei dati, e controlla il risultato fornito da inputbox.
Inputbox infatti, fornisce sotto forma di stringa sia il testo che digiti, sia una stringa vuota se clicchi su annulla.
Durante la prima chiamata, controldata verifica che il numero di vettori da inserire sia effettivamente un numero.
Infatti, se digiti una stringa convertibile in un numero, controldata assegna alla variabile ReturnVal la stringa convertita in un valore integer che corrisponde al conteggio numeri (N).
Se invece digiti per errore una stringa non numerica, la funzione restituisce false (il valore di default), e l'operazione viene annullata.
Nel caso invece venga cliccato cancel, controldata chiede cosa si vuole fare.

Nella seconda chiamata, controldata intercetta anche il valore false della funzione, in modo da intercettare l'eventuale annullamento della immissione.
Una volta che tutti i numeri sono stati inseriti, la routine imposta il flag s.created.
Questo flag, serve ad indicare al programma che la serie è stata correttamente creata, e si puà procedere ad eventuali elaborazioni.
Non sapendo come devi usare le tue routines, non ho chiamato la routine SortSub dopo questa riga.
Se viene ordinata la matrice, viene impostato il flag s.sorted.
Come puoi vedere, la routine sortsub, prima di fare qualsiasi cosa, controlla che la matrice sia stata creata, e che non sia gia stata ordinata.
Se la ordina, imposta s.sorted su true.
L'ultimo flag, impedisce che vengano di nuovo effettuati i calcoli di visualizzazione della matrice, e viene eseguita/saltata a seconda del valore del flag s.Worked.
Tutti i flags ( ed il label dove visualizzi la serie ordinata) vengono resettati da una unica routine (reset), che viene chiamata ogni volta che vuoi inserire una nuova serie.

Ti consiglio comunque di copiaincollare il codice nella tua applicazione (o in una nuova), impostare un punto di interruzione sulla riga 14 (del mio codice), e far partire il programma in modalità passo passo.
Potrai così controllare come procede il programma riga per riga.
E' il modo più semplice per interpretare il codice quando si è agli inizi.
:)
aaa