Quando una sequenza di istruzioni viene ripetuta fino a quando non
si verifica una certa condizione prende il nome di struttura
iterativa.
Ø
Prima struttura iterativa.
La prima struttura
iterativa consiste nella verifica di una certa condizione iniziale dalla quale
discendono, come sappiamo due scelte: vero – falso. Se la condizione è vera si
eseguono una o più istruzioni (P), dopodiché si torna a ricontrollare la
condizione iniziale. Il ciclo iterativo terminerà quando la condizione
risulterà falsa.
Questo
tipo di struttura iterativa che prende il nome di struttura iterativa mentre ha
la seguente sintassi:
mentre condizione vera esegui P
Si
dice anche che si esce dalla struttura iterativa per falso.
Per chiarire il
significato della struttura iterativa descritta proviamo a risolvere un
problema.
Vogliamo costruire un
algoritmo che calcola la somma dei primi quattro numeri naturali.
Per
risolvere il problema dobbiamo quindi sommare i numeri 1,2,3,4.
Assegniamo
ad una “variabile <Somma>” il valore iniziale 0 e ad una variabile <K> il valore 1 ed eseguiamo le
seguenti istruzioni:
Somma ß Somma + 1;
k ß k + 1;
La
prima istruzione va così interpretata: esegui l’operazione <Somma + 1>
(cioè 0 + 1) e “assegna” il risultato
ottenuto alla variabile <Somma> (il cui valore da 0 iniziale passa a 1).
(Questa operazione, detta di assegnazione,
che ha un’importanza fondamentale nella programmazione strutturata in seguito
sarà opportunamente approfondita).
La
seconda istruzione aumenta di una unità il valore iniziale di k che passa da 1
a 2: k viene definito “contatore” in quanto svolge la funzione di “contare”
quante volte il ciclo viene ripetuto.
Si
ripete il ciclo, detto ciclo iterativo,
fino a quando il valore assunto da k sarà 4 (tanti quanto sono i numeri che volevamo
sommare!). Con tale situazione la condizione di scelta sarà falsa (in quanto
essa imponeva k = 4) e quindi il ciclo terminerà (terminazione per
falso).
Ø
Seconda struttura iterativa.
La seconda struttura
iterativa consiste nella esecuzione una o più istruzioni (P), dopodiché si controlla
la condizione di uscita dalla struttura iterativa (ciclo). Il ciclo iterativo
terminerà quando la condizione risulterà vera.
Questo
tipo di struttura iterativa che prende il nome di struttura iterativa ripeti ha
la seguente sintassi:
ripeti P finchè condizione è falsa
Si
dice anche che si esce dalla struttura iterativa per vero.
Se allora riconsideriamo il
precedente problema (somma dei primi quattro numeri naturali), dobbiamo
considerare quanto segue: a) sappiamo il numero dei cicli N che è necessario
realizzare e cioè 4; b) il primo ciclo viene realizzato a prescindere dalla
condizione per cui il contatore dovrà essere decrementato prima del controllo
della condizione; c) anche la somma dovrà essere realizzata prima della
condizione. Tenuto conto di ciò avremo le seguenti istruzioni (P) comprese all’interno del ciclo:
Somma ß Somma + 1;
k ß k - 1;
La
prima istruzione va così interpretata: esegui l’operazione <Somma + 1>
(cioè 0 + 1) e “assegna” il risultato
ottenuto alla variabile <Somma> (il cui valore da 0 iniziale passa a 1).
La
seconda istruzione decrementa di una unità il valore iniziale di k che passa da
4 a 3.
Si
ripete il ciclo fino a quando il valore assunto da k sarà 0 (tanti quanto sono
i numeri che volevamo sommare!). Con tale situazione la condizione di scelta
sarà vera (in quanto essa imponeva k =0) e quindi il ciclo terminerà (terminazione
per vero).
Ecco
allora come si presenta il flow-chart: