En aquest tema, aprendrem com definir i utilitzar funcions en ALGOL. Les funcions són blocs de codi reutilitzables que permeten estructurar millor els programes, facilitant la seva lectura, manteniment i depuració.
Conceptes Clau
- Funció: Un bloc de codi que realitza una tasca específica i pot ser cridat des de diferents parts del programa.
- Paràmetres: Valors que es passen a la funció per ser utilitzats dins d'ella.
- Valor de retorn: El resultat que la funció retorna després de la seva execució.
Estructura d'una Funció en ALGOL
Una funció en ALGOL es defineix amb la següent estructura bàsica:
function nom_funció(paràmetres) : tipus_de_retorn; begin // Cos de la funció return valor_de_retorn; end;
Components de la Definició de Funció
- Nom de la funció: Identificador únic per a la funció.
- Paràmetres: Llista de variables que la funció necessita per operar.
- Tipus de retorn: El tipus de dada que la funció retorna.
- Cos de la funció: Bloc de codi que defineix les operacions que la funció realitza.
- Instrucció de retorn: Especifica el valor que la funció retorna.
Exemple Pràctic
Vegem un exemple pràctic d'una funció que calcula la suma de dos nombres:
Explicació del Codi
- Nom de la funció:
suma
- Paràmetres:
a
ib
, ambdós de tipusinteger
- Tipus de retorn:
integer
- Cos de la funció:
return a + b;
retorna la suma dels dos paràmetres
Crida a una Funció
Per utilitzar una funció, simplement la cridem pel seu nom i li passem els arguments necessaris. Per exemple:
En aquest cas, resultat
tindrà el valor 8
després de l'execució de la funció suma
.
Exercicis Pràctics
Exercici 1: Funció de Multiplicació
Defineix una funció anomenada multiplica
que prengui dos paràmetres x
i y
i retorni el seu producte.
Exercici 2: Funció de Factorial
Defineix una funció anomenada factorial
que calculi el factorial d'un nombre enter positiu.
function factorial(n) : integer; begin if n = 0 then return 1; else return n * factorial(n - 1); end;
Solucions
Solució Exercici 1
Solució Exercici 2
function factorial(n) : integer; begin if n = 0 then return 1; else return n * factorial(n - 1); end;
Errors Comuns i Consells
- Oblidar el tipus de retorn: Assegura't de definir el tipus de retorn de la funció.
- No retornar un valor: Cada funció ha de retornar un valor del tipus especificat.
- Paràmetres no inicialitzats: Assegura't que els paràmetres passats a la funció estiguin inicialitzats.
Resum
En aquest tema, hem après a definir funcions en ALGOL, incloent la seva estructura bàsica, com passar paràmetres i com retornar valors. També hem vist exemples pràctics i hem practicat amb exercicis per reforçar els conceptes apresos. En el següent tema, explorarem els paràmetres de funció i els valors de retorn amb més detall.
Curs de Programació en ALGOL
Mòdul 1: Introducció a ALGOL
Mòdul 2: Sintaxi i Estructura Bàsica
- Estructura del Programa ALGOL
- Variables i Tipus de Dades
- Entrada i Sortida Bàsica
- Operadors i Expressions
Mòdul 3: Estructures de Control
Mòdul 4: Funcions i Procediments
- Definició de Funcions
- Paràmetres de Funció i Valors de Retorn
- Funcions Recursives
- Procediments en ALGOL
Mòdul 5: Estructures de Dades
Mòdul 6: Temes Avançats
Mòdul 7: Aplicacions Pràctiques
- Mètodes Numèrics
- Implementació d'Algorismes
- Construcció d'un Compilador Simple
- Estudis de Cas i Projectes