En aquest tema, aprendrem sobre els procediments i funcions en Delphi/Object Pascal, que són fonamentals per a l'organització i reutilització del codi. Els procediments i funcions ens permeten dividir el codi en blocs més petits i manejables, facilitant la seva lectura, manteniment i depuració.

Continguts

Introducció als Procediments i Funcions

Els procediments i funcions són subrutines que encapsulen un conjunt d'instruccions que poden ser cridades des de diferents parts del programa. La diferència principal entre un procediment i una funció és que una funció retorna un valor, mentre que un procediment no.

Beneficis de l'ús de Procediments i Funcions

  • Reutilització del codi: Permeten reutilitzar el mateix codi en diferents parts del programa.
  • Organització: Faciliten l'organització del codi en blocs lògics.
  • Mantenibilitat: Fan que el codi sigui més fàcil de mantenir i depurar.
  • Claredat: Milloren la llegibilitat del codi.

Declaració de Procediments

Un procediment es declara utilitzant la paraula clau procedure, seguida del nom del procediment i, opcionalment, una llista de paràmetres.

Sintaxi

procedure NomDelProcediment(Paràmetres: Tipus);
begin
  // Cos del procediment
end;

Exemple

procedure MostrarMissatge;
begin
  WriteLn('Hola, món!');
end;

En aquest exemple, el procediment MostrarMissatge no té paràmetres i simplement imprimeix un missatge a la consola.

Declaració de Funcions

Una funció es declara utilitzant la paraula clau function, seguida del nom de la funció, una llista de paràmetres (opcional) i el tipus de retorn.

Sintaxi

function NomDeLaFunció(Paràmetres: Tipus): TipusDeRetorn;
begin
  // Cos de la funció
  NomDeLaFunció := ValorDeRetorn;
end;

Exemple

function Sumar(a, b: Integer): Integer;
begin
  Sumar := a + b;
end;

En aquest exemple, la funció Sumar pren dos paràmetres de tipus Integer i retorna la seva suma.

Paràmetres en Procediments i Funcions

Els paràmetres permeten passar valors a procediments i funcions. Hi ha diferents tipus de paràmetres:

  • Paràmetres per valor: Es passen per valor i no poden ser modificats dins de la subrutina.
  • Paràmetres per referència: Es passen per referència i poden ser modificats dins de la subrutina.
  • Paràmetres constants: Es passen per valor però no poden ser modificats dins de la subrutina.

Exemple de Paràmetres per Valor

procedure Incrementar(x: Integer);
begin
  x := x + 1;
end;

Exemple de Paràmetres per Referència

procedure Incrementar(var x: Integer);
begin
  x := x + 1;
end;

Exemple de Paràmetres Constants

procedure MostrarMissatge(const missatge: String);
begin
  WriteLn(missatge);
end;

Exemples Pràctics

Exemple 1: Procediment amb Paràmetres

procedure ImprimirSalutacio(nom: String);
begin
  WriteLn('Hola, ', nom, '!');
end;

begin
  ImprimirSalutacio('Anna');
end.

Exemple 2: Funció amb Paràmetres

function Multiplicar(a, b: Integer): Integer;
begin
  Multiplicar := a * b;
end;

begin
  WriteLn('El resultat és: ', Multiplicar(3, 4));
end.

Exercicis Pràctics

Exercici 1: Crear un Procediment

Crea un procediment anomenat MostrarData que imprimeixi la data actual.

Solució

procedure MostrarData;
begin
  WriteLn(DateToStr(Date));
end;

begin
  MostrarData;
end.

Exercici 2: Crear una Funció

Crea una funció anomenada EsParell que prengui un enter com a paràmetre i retorni True si el nombre és parell i False en cas contrari.

Solució

function EsParell(x: Integer): Boolean;
begin
  EsParell := (x mod 2 = 0);
end;

begin
  WriteLn('4 és parell? ', EsParell(4));
  WriteLn('7 és parell? ', EsParell(7));
end.

Conclusió

En aquesta secció, hem après sobre els procediments i funcions en Delphi/Object Pascal, incloent la seva declaració, ús de paràmetres i alguns exemples pràctics. Els procediments i funcions són eines poderoses per a l'organització i reutilització del codi, i són essencials per a qualsevol programador que vulgui escriure codi net i eficient. En la propera secció, explorarem l'abast i la durada de les variables.

Curs de Programació Delphi/Object Pascal

Mòdul 1: Introducció a Delphi/Object Pascal

Mòdul 2: Estructures de Control i Procediments

Mòdul 3: Treballant amb Dades

Mòdul 4: Programació Orientada a Objectes

Mòdul 5: Funcions Avançades de Delphi

Mòdul 6: Desenvolupament d'Interfícies Gràfiques amb VCL i FMX

Mòdul 7: Desenvolupament Web i Mòbil

Mòdul 8: Millors Pràctiques i Patrons de Disseny

Mòdul 9: Projecte Final

© Copyright 2024. Tots els drets reservats