En aquest tema, aprendrem com definir i utilitzar paràmetres de funció i com retornar valors des de les funcions en ALGOL. Aquest concepte és fonamental per a la programació modular i reutilitzable.

  1. Definició de Funcions amb Paràmetres

1.1. Què són els Paràmetres de Funció?

Els paràmetres de funció són variables que es passen a una funció quan aquesta és cridada. Permeten que la funció treballi amb dades específiques proporcionades en el moment de la crida.

1.2. Sintaxi Bàsica

La sintaxi per definir una funció amb paràmetres en ALGOL és la següent:

procedure NomFuncio(parametre1: tipus; parametre2: tipus);
begin
    ! Cos de la funció
end;

1.3. Exemple Pràctic

Vegem un exemple pràctic d'una funció que suma dos nombres:

procedure Suma(a: integer; b: integer) -> integer;
begin
    Suma := a + b;
end;

En aquest exemple:

  • Suma és el nom de la funció.
  • a i b són els paràmetres de la funció, tots dos de tipus integer.
  • La funció retorna un valor de tipus integer.

  1. Crida a Funcions amb Paràmetres

2.1. Sintaxi de la Crida

Per cridar una funció amb paràmetres, simplement passem els valors corresponents en l'ordre definit:

integer resultat;
resultat := Suma(5, 3);

2.2. Exemple Pràctic

Continuant amb l'exemple anterior, cridem la funció Suma amb els valors 5 i 3:

integer resultat;
resultat := Suma(5, 3);
print(resultat);  ! Això imprimirà 8

  1. Valors de Retorn

3.1. Què és un Valor de Retorn?

Un valor de retorn és el resultat que una funció proporciona després de completar la seva execució. Aquest valor pot ser utilitzat per altres parts del programa.

3.2. Definició de Funcions amb Valors de Retorn

Per definir una funció que retorna un valor, utilitzem la següent sintaxi:

procedure NomFuncio(parametre1: tipus; parametre2: tipus) -> tipusRetorn;
begin
    NomFuncio := valorRetorn;
end;

3.3. Exemple Pràctic

Vegem un exemple d'una funció que calcula el quadrat d'un nombre:

procedure Quadrat(x: integer) -> integer;
begin
    Quadrat := x * x;
end;

En aquest exemple:

  • Quadrat és el nom de la funció.
  • x és el paràmetre de la funció, de tipus integer.
  • La funció retorna un valor de tipus integer.

3.4. Crida a Funcions amb Valors de Retorn

Per cridar una funció que retorna un valor, podem assignar el resultat a una variable:

integer resultat;
resultat := Quadrat(4);
print(resultat);  ! Això imprimirà 16

  1. Exercicis Pràctics

Exercici 1

Escriu una funció Multiplica que prengui dos paràmetres enters i retorni el seu producte.

Solució

procedure Multiplica(a: integer; b: integer) -> integer;
begin
    Multiplica := a * b;
end;

Exercici 2

Escriu una funció Factorial que calculi el factorial d'un nombre enter positiu.

Solució

procedure Factorial(n: integer) -> integer;
begin
    if n = 0 then
        Factorial := 1
    else
        Factorial := n * Factorial(n - 1);
end;

  1. Errors Comuns i Consells

Errors Comuns

  1. No inicialitzar els paràmetres: Assegura't que els paràmetres de la funció estiguin correctament inicialitzats abans de ser utilitzats.
  2. Tipus de dades incorrectes: Verifica que els tipus de dades dels paràmetres i el valor de retorn siguin correctes.

Consells

  1. Utilitza noms descriptius: Dona noms significatius als paràmetres i a les funcions per millorar la llegibilitat del codi.
  2. Documenta les funcions: Escriu comentaris que expliquin què fa cada funció i quins són els seus paràmetres i valors de retorn.

Conclusió

En aquesta secció, hem après com definir i utilitzar paràmetres de funció i com retornar valors des de les funcions en ALGOL. Aquests conceptes són essencials per escriure codi modular i reutilitzable. En la propera secció, explorarem les funcions recursives, que ens permetran resoldre problemes complexos de manera elegant.

© Copyright 2024. Tots els drets reservats