Sei sulla pagina 1di 6

IL CONTROLLO DEL PROGRAMMA IN C (Capitolo 4)

Strutture iterative
Nella programmazione informatica, un comando di iterazione, consente al programmatore di specificare che
un’azione dovrà essere ripetuta finché alcune condizioni rimarranno vere.
C offre 3 tipi di strutture di iterazione:

[1] dati di partenza


while (condizione);
… (blocco 1) … ← esegui
}
… (blocco 2) … ← esegui quando termina il ciclo while
}

Fin quando la condizione è vera si esegue il ciclo blocco 1, quando diventa falsa si passa al blocco 2.
Per indicare la fine dell’immissione dei dati l’utente può utilizzare un valore sentinella scelto tra valori che
non vengono confusi tra quelli accettabili in input, per indicare che l’ultimo valore sarà stato immesso.

[2] dati di partenza


do{
… (blocco 1) … ← esegui fin quando la condizione è vera
}while (condizione);
… (blocco 2) … ← esegui quando termina il ciclo while

[3] dati di partenza


for (inizializzazione; condizione; incremento)
}
… (blocco 1) … ← esegui fin quando la condizione è vera
}
… (blocco 2) … ← esegui quando la condizione diventa falsa
Iterazione controllata da un contatore
Questa tecnica utilizza una variabile detta contatore, per specificare il numero di volte che un insieme di
istruzioni dovranno essere eseguite (iterazione definita). La variabile contatore sarà incrementata (+1) o
decrementata (-1) ogni volta che sarà concluso un ciclo di istruzioni.
Iterazione controllata da un valore sentinella
In questo caso, non è stata data alcuna indicazione sul numero di volte che un insieme di istruzioni devono
essere eseguite. Per risolvere questo tipo di problema si può usare un valore speciale detto valore sentinella
(valore flag), il quale una volta immesso dall’utente indicherà la fine della immissione dati (iterazione
indefinita). Questo valore deve essere scelto affinché non possa essere confuso con i valori degli input
immessi.
Problema risolvibile tramite le strutture di controllo nidificate.
Le istruzioni break e continue
Le istruzioni break e continue sono utilizzate per alterare il flusso di controllo.
L’istruzione break, qualora sia eseguita in un comando while, for, do…while o switch, provocherà l’uscita
immediata da quel comando. L’esecuzione del programma continuerà con la prima istruzione successiva al
comando. L’utilizzo tipico dell’istruzione break è per anticipare l’uscita da un ciclo e ignorare la parte
restante.

L’istruzione continue invece, farà in modo che le rimanenti istruzioni nel corpo del comando siano
ignorate e che sia eseguita l’iterazione successiva del ciclo.

Esempio: pag. 110-112. Corso completo di programmazione, Deitel (Pearson 2007)