En aquest tema, explorarem dos conceptes fonamentals en la programació amb Delphi/Object Pascal: els arrays i les cadenes. Aquests elements són essencials per a la manipulació de dades i la creació d'aplicacions eficients.
- Arrays
1.1. Què és un Array?
Un array és una col·lecció d'elements del mateix tipus, emmagatzemats en una ubicació contigua de memòria. Els arrays permeten emmagatzemar múltiples valors sota un mateix nom de variable, accedint-hi mitjançant un índex.
1.2. Declaració d'Arrays
En Delphi, els arrays es poden declarar de la següent manera:
Aquesta declaració crea un array myArray
que pot contenir 5 enters.
1.3. Inicialització d'Arrays
Els arrays es poden inicialitzar en el moment de la seva declaració:
1.4. Accés als Elements d'un Array
Els elements d'un array es poden accedir mitjançant el seu índex:
begin myArray[1] := 10; // Assigna el valor 10 al primer element WriteLn(myArray[1]); // Mostra el valor del primer element end;
1.5. Arrays Dinàmics
Els arrays dinàmics permeten canviar la seva mida durant l'execució del programa:
var dynamicArray: array of Integer; begin SetLength(dynamicArray, 10); // Defineix la mida de l'array a 10 elements dynamicArray[0] := 1; // Assigna el valor 1 al primer element end;
Exercici Pràctic
Exercici 1: Crea un programa que declari un array de 10 enters, inicialitzi els elements amb els valors de 1 a 10 i mostri aquests valors per pantalla.
Solució:
program ArrayExample; var myArray: array[1..10] of Integer; i: Integer; begin // Inicialització de l'array for i := 1 to 10 do myArray[i] := i; // Mostra els valors de l'array for i := 1 to 10 do WriteLn('Element ', i, ': ', myArray[i]); end.
- Cadenes
2.1. Què és una Cadena?
Una cadena és una seqüència de caràcters. En Delphi, les cadenes es poden manipular fàcilment gràcies a les funcions i procediments integrats.
2.2. Declaració de Cadenes
Les cadenes es poden declarar de la següent manera:
2.3. Inicialització de Cadenes
Les cadenes es poden inicialitzar en el moment de la seva declaració:
2.4. Operacions amb Cadenes
Concatenació
La concatenació de cadenes es pot fer amb l'operador +
:
var greeting, name, fullGreeting: string; begin greeting := 'Hola, '; name := 'Joan'; fullGreeting := greeting + name; // Resultat: 'Hola, Joan' end;
Longitud de la Cadena
La funció Length
retorna la longitud d'una cadena:
var myString: string; len: Integer; begin myString := 'Hola, món!'; len := Length(myString); // Resultat: 10 end;
Subcadena
La funció Copy
permet extreure una subcadena:
var myString, subString: string; begin myString := 'Hola, món!'; subString := Copy(myString, 1, 4); // Resultat: 'Hola' end;
Exercici Pràctic
Exercici 2: Crea un programa que demani a l'usuari el seu nom i després mostri un missatge de benvinguda personalitzat.
Solució:
program StringExample; var name, greeting: string; begin Write('Introdueix el teu nom: '); ReadLn(name); greeting := 'Hola, ' + name + '!'; WriteLn(greeting); end.
Conclusió
En aquesta secció, hem après sobre els arrays i les cadenes en Delphi/Object Pascal. Hem vist com declarar, inicialitzar i manipular aquests elements fonamentals. Els exercicis pràctics proporcionats ajuden a consolidar els conceptes apresos. En el proper tema, explorarem els registres i conjunts, que ens permetran treballar amb estructures de dades més complexes.
Curs de Programació Delphi/Object Pascal
Mòdul 1: Introducció a Delphi/Object Pascal
- Introducció a Delphi i Object Pascal
- Configuració de l'Entorn de Desenvolupament
- Primera Aplicació Delphi
- Sintaxi i Estructura Bàsiques
- Variables i Tipus de Dades
Mòdul 2: Estructures de Control i Procediments
- Declaracions Condicionals
- Bucles i Iteració
- Procediments i Funcions
- Abast i Durada de les Variables
- Gestió d'Errors i Depuració
Mòdul 3: Treballant amb Dades
- Arrays i Cadenes
- Registres i Conjunts
- Tipus Enumerats i Subrang
- Gestió d'Arxius
- Accés a Bases de Dades
Mòdul 4: Programació Orientada a Objectes
- Introducció a la POO
- Classes i Objectes
- Herència i Polimorfisme
- Interfícies i Classes Abstractes
- Gestió d'Excepcions en POO
Mòdul 5: Funcions Avançades de Delphi
- Generics i Col·leccions
- Multifil i Programació Paral·lela
- Desenvolupament Basat en Components
- Biblioteca d'Execució de Delphi (RTL)
- Tècniques Avançades de Depuració
Mòdul 6: Desenvolupament d'Interfícies Gràfiques amb VCL i FMX
- Introducció a VCL
- Creació de Formularis i Controls
- Programació Basada en Esdeveniments
- Introducció a FireMonkey (FMX)
- Desenvolupament Multiplataforma amb FMX
Mòdul 7: Desenvolupament Web i Mòbil
- Desenvolupament Web amb Delphi
- Serveis RESTful
- Desenvolupament Mòbil amb Delphi
- Desplegament d'Aplicacions Mòbils
- Integració amb Serveis Web
Mòdul 8: Millors Pràctiques i Patrons de Disseny
- Organització del Codi i Documentació
- Patrons de Disseny en Delphi
- Tècniques de Refactorització
- Proves Unitàries i Desenvolupament Basat en Proves
- Optimització del Rendiment