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:

for index = start_value:end_value
    % Bloc de codi a repetir
end

Exemple 1: Bucle for simple

for i = 1:5
    disp(['Iteració: ', num2str(i)]);
end

Explicació:

  • i = 1:5 defineix el rang de valors que i prendrà, des de 1 fins a 5.
  • disp(['Iteració: ', num2str(i)]) mostra el valor actual de i en cada iteració.

Exemple 2: Bucle for amb pas diferent

for i = 1:2:9
    disp(['Valor de i: ', num2str(i)]);
end

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:

while condition
    % Bloc de codi a repetir
end

Exemple 1: Bucle while simple

i = 1;
while i <= 5
    disp(['Iteració: ', num2str(i)]);
    i = i + 1;
end

Explicació:

  • i = 1 inicialitza la variable i.
  • while i <= 5 repeteix el bloc de codi mentre la condició i <= 5 sigui certa.
  • i = i + 1 incrementa el valor de i en cada iteració.

Exemple 2: Bucle while amb condició complexa

i = 10;
while i > 0
    disp(['Valor de i: ', num2str(i)]);
    i = i - 2;
end

Explicació:

  • i = 10 inicialitza la variable i.
  • while i > 0 repeteix el bloc de codi mentre la condició i > 0 sigui certa.
  • i = i - 2 decrementa el valor de i 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.

© Copyright 2024. Tots els drets reservats