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:5defineix el rang de valors queiprendrà, des de 1 fins a 5.disp(['Iteració: ', num2str(i)])mostra el valor actual deien cada iteració.
Exemple 2: Bucle for amb pas diferent
Explicació:
i = 1:2:9defineix 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 = 1inicialitza la variablei.while i <= 5repeteix el bloc de codi mentre la condiciói <= 5sigui certa.i = i + 1incrementa el valor deien cada iteració.
Exemple 2: Bucle while amb condició complexa
Explicació:
i = 10inicialitza la variablei.while i > 0repeteix el bloc de codi mentre la condiciói > 0sigui certa.i = i - 2decrementa el valor deien cada iteració.
Exercicis Pràctics
Exercici 1: Bucle for per calcular la suma dels primers 10 nombres enters
Instruccions:
- Utilitza un bucle
forper 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
whileper 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
whilees 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
