4. Bucles i aleatorietat

4.2. Iteració

Un dels principals problemes que ens hem trobat a l’hora de dibuixar en els nostres skteches ha estat el d’haver de repetir el mateix codi quan hem volgut dibuixar el mateix diverses vegades. En principi, ho hem pogut solucionar usant variables i funcions: encapsulem el codi del que volem dibuixar en una funció i després la invoquem diverses vegades.

Això ens pot servir fins a cert punt, però imaginem que volem fer el dibuix següent:

Figura 43. Una successió de cercles
Font: elaboració pròpia.

Amb el que sabem fins ara, l’única manera que tindríem de fer-ho seria repetint el mateix codi una vegada i una altra augmentant la posició en x dels cercles:

// Anem augmentant la x dels cercles
circle(0, height * 0.5, 15);
circle(20, height * 0.5, 15);
circle(40, height * 0.5, 15);
circle(60, height * 0.5, 15);
// ...
// I així fins a tenir tots els cercles

Per ser un dibuix relativament senzill, implica moltes línies de codi fer-lo d’aquesta manera, i serà fàcil que ens equivoquem en escriure alguna de les coordenades. Afortunadament per a nosaltres, si hi ha alguna cosa per a la qual els ordinadors són eficients és per fer tasques de manera molt ràpida. Nosaltres, per escriure les vint línies que dibuixen els cercles podem trigar diversos minuts, però si sabem, mitjançant el nostre codi, dir a l’ordinador que dugui a terme la mateixa operació vint vegades, l’ordinador ho farà en qüestió de microsegons.

Per a això, comptem amb els bucles for, que ens ajudaran a repetir línies de codi tantes vegades com vulguem.