Els bucles són una part fonamental de la programació, ja que permeten repetir una sèrie d'instruccions múltiples vegades. En MATLAB, els dos tipus principals de bucles són for
i while
. Aquest tema cobrirà com utilitzar aquests bucles, amb exemples pràctics i exercicis per reforçar els conceptes.
Bucles for
El bucle for
s'utilitza quan es coneix el nombre de vegades que s'ha de repetir un bloc de codi. La sintaxi bàsica és la següent:
Exemple 1: Bucle for
simple
Explicació:
i = 1:5
defineix el rang de valors quei
prendrà, des de 1 fins a 5.disp(['Iteració: ', num2str(i)])
mostra el valor actual dei
en cada iteració.
Exemple 2: Bucle for
amb pas diferent
Explicació:
i = 1:2:9
defineix un rang amb un pas de 2, començant en 1 i acabant en 9.
Bucles while
El bucle while
s'utilitza quan no es coneix el nombre exacte d'iteracions per endavant. La sintaxi bàsica és la següent:
Exemple 1: Bucle while
simple
Explicació:
i = 1
inicialitza la variablei
.while i <= 5
repeteix el bloc de codi mentre la condiciói <= 5
sigui certa.i = i + 1
incrementa el valor dei
en cada iteració.
Exemple 2: Bucle while
amb condició complexa
Explicació:
i = 10
inicialitza la variablei
.while i > 0
repeteix el bloc de codi mentre la condiciói > 0
sigui certa.i = i - 2
decrementa el valor dei
en cada iteració.
Exercicis Pràctics
Exercici 1: Bucle for
per calcular la suma dels primers 10 nombres enters
Instruccions:
- Utilitza un bucle
for
per sumar els nombres de l'1 al 10. - Emmagatzema el resultat en una variable anomenada
suma
.
Solució:
suma = 0; for i = 1:10 suma = suma + i; end disp(['La suma dels primers 10 nombres enters és: ', num2str(suma)]);
Exercici 2: Bucle while
per trobar el primer nombre enter divisible per 7 i 5
Instruccions:
- Utilitza un bucle
while
per trobar el primer nombre enter que sigui divisible per 7 i 5. - Emmagatzema el resultat en una variable anomenada
num
.
Solució:
num = 1; while mod(num, 7) ~= 0 || mod(num, 5) ~= 0 num = num + 1; end disp(['El primer nombre enter divisible per 7 i 5 és: ', num2str(num)]);
Errors Comuns i Consells
- Condicions infinites: Assegura't que la condició del bucle
while
es pugui complir eventualment per evitar bucles infinits. - Increment/Decrement: En els bucles
while
, no oblidis incrementar o decrementar la variable de control per evitar bucles infinits. - Rang de valors: En els bucles
for
, assegura't que el rang de valors sigui correcte per evitar iteracions inesperades.
Conclusió
Els bucles for
i while
són eines poderoses per repetir blocs de codi en MATLAB. El bucle for
és ideal quan es coneix el nombre d'iteracions, mentre que el bucle while
és útil quan la condició de finalització no és coneguda per endavant. Practicar amb aquests bucles t'ajudarà a comprendre millor com controlar el flux del teu programa. En el següent tema, explorarem les funcions en MATLAB, que permeten modularitzar i reutilitzar el codi de manera eficient.
Curs de Programació en MATLAB
Mòdul 1: Introducció a MATLAB
- Començant amb MATLAB
- Interfície i Entorn de MATLAB
- Comandes i Sintaxi Bàsiques
- Variables i Tipus de Dades
- Operacions i Funcions Bàsiques
Mòdul 2: Vectors i Matrius
- Creació de Vectors i Matrius
- Operacions amb Matrius
- Indexació i Segmentació
- Funcions de Matrius
- Àlgebra Lineal en MATLAB
Mòdul 3: Estructures de Programació
- Flux de Control: if, else, switch
- Bucles: for, while
- Funcions: Definició i Abast
- Scripts vs. Funcions
- Depuració i Gestió d'Errors
Mòdul 4: Visualització de Dades
- Conceptes Bàsics de Gràfics
- Gràfics 2D
- Gràfics 3D
- Personalització de Gràfics
- Tècniques Avançades de Gràfics
Mòdul 5: Anàlisi de Dades i Estadística
- Importació i Exportació de Dades
- Estadístiques Descriptives
- Preprocessament de Dades
- Anàlisi de Regressió
- Proves Estadístiques
Mòdul 6: Temes Avançats
- Entrada/Sortida de Fitxers
- Gestió de Grans Conjunts de Dades
- Tècniques d'Optimització
- Conceptes Bàsics de Simulink
- Computació Paral·lela