Els arrays són una estructura de dades fonamental en la programació que permet emmagatzemar múltiples valors del mateix tipus en una sola variable. En ALGOL, els arrays són molt útils per gestionar col·leccions de dades de manera eficient.

Conceptes Clau

  1. Definició d'Arrays: Un array és una col·lecció d'elements, tots del mateix tipus, que es poden accedir mitjançant un índex.
  2. Índex: Els elements d'un array es numeren a partir d'un índex, que normalment comença en 1 en ALGOL.
  3. Dimensionalitat: Els arrays poden ser unidimensionals (vectors) o multidimensionals (matrius).

Declaració d'Arrays

Per declarar un array en ALGOL, es fa servir la següent sintaxi:

array nom_array[dimensió];

Exemple de Declaració d'un Array Unidimensional

begin
    integer array[10];  ! Declara un array d'enters amb 10 elements
end

Exemple de Declaració d'un Array Multidimensional

begin
    integer matrix[5, 5];  ! Declara una matriu d'enters de 5x5
end

Inicialització d'Arrays

Els arrays es poden inicialitzar en el moment de la seva declaració o posteriorment.

Inicialització en el Moment de la Declaració

begin
    integer array[5] := (1, 2, 3, 4, 5);  ! Inicialitza l'array amb valors específics
end

Inicialització Posterior

begin
    integer array[5];
    array[1] := 10;
    array[2] := 20;
    array[3] := 30;
    array[4] := 40;
    array[5] := 50;
end

Accés als Elements d'un Array

Els elements d'un array es poden accedir mitjançant el seu índex.

Exemple d'Accés a Elements

begin
    integer array[5] := (1, 2, 3, 4, 5);
    integer x;
    x := array[3];  ! x ara conté el valor 3
end

Iteració sobre Arrays

És comú utilitzar bucles per iterar sobre els elements d'un array.

Exemple d'Iteració amb un Bucle for

begin
    integer array[5] := (1, 2, 3, 4, 5);
    integer i;
    for i := 1 step 1 until 5 do
        print(array[i]);
end

Exercicis Pràctics

Exercici 1: Declaració i Inicialització

Descripció: Declara un array de 7 elements i inicialitza'l amb els valors de la seqüència de Fibonacci fins al setè element.

Solució:

begin
    integer fibonacci[7] := (1, 1, 2, 3, 5, 8, 13);
end

Exercici 2: Suma d'Elements d'un Array

Descripció: Escriu un programa que sumi tots els elements d'un array de 10 elements.

Solució:

begin
    integer array[10] := (1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
    integer sum, i;
    sum := 0;
    for i := 1 step 1 until 10 do
        sum := sum + array[i];
    print(sum);  ! Ha de mostrar 55
end

Exercici 3: Matriu de Multiplicació

Descripció: Declara una matriu de 3x3 i inicialitza-la amb els valors de la taula de multiplicar del 2. Mostra la matriu.

Solució:

begin
    integer matrix[3, 3];
    integer i, j;
    for i := 1 step 1 until 3 do
        for j := 1 step 1 until 3 do
            matrix[i, j] := 2 * ((i - 1) * 3 + j);
    for i := 1 step 1 until 3 do
    begin
        for j := 1 step 1 until 3 do
            print(matrix[i, j]);
        print(newline);
    end
end

Resum

En aquesta secció, hem après sobre els arrays en ALGOL, incloent la seva declaració, inicialització, accés i iteració. Els arrays són una eina poderosa per gestionar col·leccions de dades i són fonamentals per a molts algorismes i aplicacions. En el següent mòdul, explorarem altres estructures de dades com els registres i els punteres.

© Copyright 2024. Tots els drets reservats