← Índex del curs Exercicis

Unitat 4. Arrays i Matrius

Unitat Didàctica 4:

En aquesta unitat aprendràs:

Concepte d'array i organització contigua a la memòria amb accés per índex
Visualització interactiva de lectura i recorregut d'arrays amb el stepper de memòria
Matrius bidimensionals: files, columnes i recorregut amb bucles niats

Estructures de Dades Homogènies: Arrays i Matrius

Fins ara hem emmagatzemat cada valor en una variable independent. Però què passa si hem de processar les notes de 500 estudiants o les coordenades de milers de píxels? Necessitem estructures que puguin guardar múltiples valors de forma organitzada.

1. Arrays: Estructures Homogènies i Contigües

Un array és una estructura de dades de mida fixa que conté una col·lecció d'elements del mateix tipus, emmagatzemats de manera contigua a la memòria.

Els elements s'identifiquen mitjançant un índex que comença sempre des del número 0. La propietat length ens indica quants elements pot contenir.

// Declaració i assignació d'un array de 5 enters int[] nombres = new int[5]; nombres[0] = 10; nombres[1] = 20; // Inicialització directa String[] dies = {"Dilluns", "Dimarts", "Dimecres", "Dijous", "Divendres"}; println("El primer dia és: " + dies[0]);

Llegir un array de l'entrada estàndard i memòria pas a pas

Observa en el següent stepper interactiu com un programa demana la mida d'un array, l'allotja a la memòria mem amb els seus respectius índexs, llegeix els valors un a un des de l'entrada i els mostra per consola:

int len = scanner.nextInt(); int[] array = new int[len]; for (int i = 0; i < len; i++) { array[i] = scanner.nextInt(); }

2. Matrius Bidimensionals (Arrays 2D)

Una matriu és un array d'arrays. Es pot visualitzar com una graella o taula formada per files i columnes, molt útil per representar taulers de joc, imatges o dades tabulades:

int[][] matriu = new int[3][4]; // 3 files x 4 columnes matriu[0][0] = 1; // Fila 0, columna 0 // Recorregut amb bucles niats: for (int i = 0; i < matriu.length; i++) { for (int j = 0; j < matriu[i].length; j++) { System.out.print(matriu[i][j] + " "); } System.out.println(); }

Exercicis Pràctics i Qüestionaris

Posa a prova el que has après completant els qüestionaris interactius auto-avaluables i els reptes de programació.

Exercicis