Els bucles són una part fonamental de la programació, ja que permeten executar un bloc de codi repetidament fins que es compleixi una condició específica. En aquest tema, explorarem els diferents tipus de bucles disponibles en C i com utilitzar-los de manera efectiva.

Tipus de Bucles

En C, hi ha tres tipus principals de bucles:

  1. Bucle for
  2. Bucle while
  3. Bucle do-while

Bucle for

El bucle for és ideal quan es coneix el nombre exacte d'iteracions que es volen realitzar. La seva sintaxi és la següent:

for (inicialització; condició; increment/decrement) {
    // Bloc de codi a executar
}

Exemple:

#include <stdio.h>

int main() {
    int i;
    for (i = 0; i < 5; i++) {
        printf("Iteració %d\n", i);
    }
    return 0;
}

Explicació:

  • Inicialització: int i = 0; - Es declara i inicialitza la variable de control del bucle.
  • Condició: i < 5; - El bucle s'executa mentre aquesta condició sigui certa.
  • Increment/Decrement: i++ - Després de cada iteració, la variable de control s'incrementa en 1.

Bucle while

El bucle while s'utilitza quan no es coneix el nombre exacte d'iteracions per endavant. La seva sintaxi és la següent:

while (condició) {
    // Bloc de codi a executar
}

Exemple:

#include <stdio.h>

int main() {
    int i = 0;
    while (i < 5) {
        printf("Iteració %d\n", i);
        i++;
    }
    return 0;
}

Explicació:

  • Condició: i < 5; - El bucle s'executa mentre aquesta condició sigui certa.
  • Increment/Decrement: i++ - La variable de control s'incrementa dins del bloc de codi.

Bucle do-while

El bucle do-while és similar al while, però garanteix que el bloc de codi s'executi almenys una vegada. La seva sintaxi és la següent:

do {
    // Bloc de codi a executar
} while (condició);

Exemple:

#include <stdio.h>

int main() {
    int i = 0;
    do {
        printf("Iteració %d\n", i);
        i++;
    } while (i < 5);
    return 0;
}

Explicació:

  • Bloc de codi: El bloc de codi s'executa almenys una vegada abans de verificar la condició.
  • Condició: i < 5; - El bucle continua executant-se mentre aquesta condició sigui certa.

Comparació de Bucles

Tipus de Bucle Quan Utilitzar-lo Sintaxi
for Quan es coneix el nombre exacte d'iteracions for (inicialització; condició; increment/decrement) { ... }
while Quan no es coneix el nombre exacte d'iteracions while (condició) { ... }
do-while Quan es vol assegurar que el bloc de codi s'executi almenys una vegada do { ... } while (condició);

Exercicis Pràctics

Exercici 1: Bucle for

Escriu un programa que imprimeixi els nombres del 1 al 10 utilitzant un bucle for.

Solució:

#include <stdio.h>

int main() {
    int i;
    for (i = 1; i <= 10; i++) {
        printf("%d\n", i);
    }
    return 0;
}

Exercici 2: Bucle while

Escriu un programa que sumi els nombres del 1 al 10 utilitzant un bucle while i imprimeixi el resultat.

Solució:

#include <stdio.h>

int main() {
    int i = 1;
    int suma = 0;
    while (i <= 10) {
        suma += i;
        i++;
    }
    printf("La suma és: %d\n", suma);
    return 0;
}

Exercici 3: Bucle do-while

Escriu un programa que demani a l'usuari un nombre positiu i continuï demanant fins que l'usuari introdueixi un nombre positiu utilitzant un bucle do-while.

Solució:

#include <stdio.h>

int main() {
    int nombre;
    do {
        printf("Introdueix un nombre positiu: ");
        scanf("%d", &nombre);
    } while (nombre <= 0);
    printf("Has introduït el nombre positiu: %d\n", nombre);
    return 0;
}

Errors Comuns i Consells

  • Oblidar l'increment/decrement: En un bucle for o while, és fàcil oblidar incrementar o decrementar la variable de control, el que pot causar un bucle infinit.
  • Condicions incorrectes: Assegura't que la condició del bucle sigui correcta per evitar bucles infinits o iteracions inesperades.
  • Inicialització fora del bucle: En un bucle for, assegura't que la inicialització de la variable de control es faci dins de la declaració del bucle.

Resum

En aquesta secció, hem après sobre els tres tipus principals de bucles en C (for, while, do-while), la seva sintaxi i quan utilitzar-los. També hem vist exemples pràctics i exercicis per reforçar els conceptes apresos. Els bucles són una eina poderosa en la programació que permeten repetir blocs de codi de manera eficient i controlada.

Curs de Programació en C

Mòdul 1: Introducció al C

Mòdul 2: Tipus de Dades i Variables

Mòdul 3: Flux de Control

Mòdul 4: Funcions

Mòdul 5: Arrays i Strings

Mòdul 6: Punteres

Mòdul 7: Estructures i Unions

Mòdul 8: Assignació Dinàmica de Memòria

Mòdul 9: Gestió d'Arxius

Mòdul 10: Temes Avançats

Mòdul 11: Millors Pràctiques i Optimització

Mòdul 12: Projecte i Avaluació Final

© Copyright 2024. Tots els drets reservats