prof. Nunzio Brugaletta Programmazione e linguaggio C

EnneBi - Programmazione
Avanti Indietro Inizio


1.5 Cicli a contatore

Una applicazione diffusa dei contatori è quella di controllo delle elaborazioni iterative. Ci sono delle elaborazioni cicliche in cui è noto il numero degli elementi da elaborare e, in questi casi, un contatore, che si aggiorna ad ogni elaborazione effettuata (si pensi ad esempio ad un contachilometri di una automobile che si aggiorna in automatico ad ogni chilometro percorso), conteggia gli elementi che vengono trattati mano a mano. Appena il contatore raggiunge la quantità prestabilita, l'elaborazione ha termine.

In questi casi lo schema generale dell'elaborazione ciclica può assumere questo aspetto:

Ricevi Quantità elementi da elaborare
Per contatore da 1 a quantità elementi da elaborare
  Ricevi elemento
  elabora elemento
Fine-Per

Si tratta di un caso particolare dell'elaborazione ciclica. Rispetto all'elaborazione ciclica trattata precedentemente (il ciclo Mentre controllato dall'avere, una certa variabile, assunto un valore particolare) si possono notare alcune differenze:

Ciclo Mentre

Ciclo Per

Considera primo elemento
Mentre elementi non finiti
  Elabora elemento 
  Considera prossimo elemento
Fine mentre
Ricevi Quantità elementi da elaborare
Per contatore da 1 a quantità elementi
  Ricevi elemento
  elabora elemento
Fine-Per

Nel ciclo Mentre si acquisisce il primo elemento prima dell'inizio del ciclo e, quindi, quando si entra nel ciclo la prima cosa da fare è effettuare l'elaborazione dell'elemento che è stato ricevuto; l'input successivo prepara il prossimo elemento. Viene acquisito un elemento in più che funge da tappo: serve solo ad avvisare che l'elaborazione è finita. Se ci sono, per esempio, 8 elementi da elaborare devono essere forniti 9 elementi (gli 8 da elaborare e l'elemento tappo). Il conteggio degli elementi elaborati può essere effettuato utilizzando un contatore.

Nel ciclo Per si acquisisce per prima cosa il numero rappresentante la quantità delle iterazioni. Subito dopo si può procedere con l'elaborazione ciclica: un contatore automatico si occupa di verificare se il valore contenuto nel contatore abbia raggiunto la quantità prefissata e, in questo caso, di bloccare l'iterazione. Non è necessario alcun input suppletivo.





Avanti Indietro Inizio

http://ennebi.solira.org ennebi@solira.org