lettura facile

I cicli su Matlab

In questa lezione di Matlab ti spiego come realizzare una struttura ciclica.

Cos'è una struttura ciclica? E' una struttura usata per compiere operazioni ripetitive. E' anche detta ciclo o loop. Un ciclo esegue più volte lo stesso blocco di istruzioni modificando le variabili di lavoro. Ogni esecuzione completa del blocco di istruzioni è detta iterazione.

Le principali strutture cicliche di Matlab sono le istruzioni for, while e do until.

Il ciclo for

La struttura ciclica for esegue un blocco di istruzioni per un numero predefinito di volte.

for inizio:fine
blocco di istruzioni
end

Tramite l'istruzione for puoi realizzare soltanto un ciclo determinato

E' un ciclo di cui conosci già a priori quante saranno le iterazioni da compiere.

Ecco un esempio di ciclo for

for 1:9
disp(x);
end

Questo ciclo compie 9 iterazioni per stampare una sequenza di numeri da 1 a 9

1
2
3
4
5
6
7
8
9

Per realizzare un ciclo determinato puoi usare anche le istruzioni while oppure do until

Queste altre istruzioni sono però più potenti perché ti permettono anche di realizzare dei cicli indeterminati.

Il ciclo while

Il ciclo while esegue un blocco di istruzioni più volte finché una condizione è soddisfatta.

while condizione
blocco di istruzioni
end

E' un ciclo indeterminato perché potresti non conoscere il numero delle iterazioni del ciclo.

Ad esempio, un ciclo indeterminato potrebbe eseguire 10, 100 o un miliardo di iterazioni.

Se la condizione del ciclo non è soddisfatta fin dall'inizio, il ciclo while non compie nemmeno un'iterazione.

Nota. Se la condizione del ciclo è sempre soddisfatta, il ciclo while itera all'infinito (loop infinito) senza mai finire di girare. Il loop infinito è uno dei problemi da evitare a tutti i costi perché consuma inutilmente le risorse del sistema.

Puoi usare il ciclo while per realizzare sia i cicli determinati che indeterminati.

Ecco un esempio pratico di ciclo while

x=1;
while x<10
disp(x);
x=x+1;
end

Il risultato in output è

1
2
3
4
5
6
7
8
9

Il ciclo do until

Una struttura ciclica do until compie sempre almeno un'iterazione perché la condizione viene controllata alla fine di ogni iterazione.

In Matlab non c'è un'istruzione specifica per realizzare il ciclo do until ma puoi facilmente realizzarlo usando l'istruzione while

Ecco un esempio pratico

cond=true;
x=1;
while cond
disp(x);
x=x+1;
if (x>9)
cond=false;
end
end

Il risultato in output è una sequenza di numeri da 1 a 9

1
2
3
4
5
6
7
8
9

Queste sono le principali strutture cicliche di Matlab.




Non hai risolto il tuo problema? Scrivi una domanda




FacebookTwitterLinkedinLinkedin