En aquest mòdul, aprendrem com gestionar errors i depurar programes en ALGOL. La gestió d'errors i la depuració són habilitats essencials per a qualsevol programador, ja que permeten identificar i corregir problemes en el codi de manera eficient.
- Introducció a la Gestió d'Errors
1.1. Tipus d'Errors
Els errors en un programa es poden classificar en tres categories principals:
- Errors de Sintaxi: Errors que es produeixen quan el codi no segueix les regles sintàctiques del llenguatge.
- Errors de Temps d'Execució: Errors que es produeixen durant l'execució del programa, com ara divisions per zero o accés a memòria no vàlida.
- Errors Lògics: Errors que es produeixen quan el programa no fa el que s'esperava, tot i que no hi ha errors de sintaxi o temps d'execució.
1.2. Maneig d'Errors en ALGOL
ALGOL proporciona mecanismes per detectar i gestionar errors durant l'execució del programa. Aquests mecanismes inclouen l'ús de sentències condicionals per verificar condicions d'error i prendre accions correctives.
Exemple de Maneig d'Errors
begin
integer a, b, result;
a := 10;
b := 0;
if b = 0 then
print("Error: Divisió per zero");
else
result := a / b;
print("Resultat: ", result);
fi;
end;En aquest exemple, es verifica si b és zero abans de realitzar la divisió per evitar un error de temps d'execució.
- Depuració de Programes
2.1. Què és la Depuració?
La depuració és el procés de trobar i corregir errors en un programa. Aquest procés pot incloure l'ús d'eines de depuració, així com tècniques de programació per identificar i solucionar problemes.
2.2. Eines de Depuració
Les eines de depuració són programes que ajuden els programadors a inspeccionar l'execució del codi, permetent-los identificar i corregir errors de manera més eficient. Algunes funcionalitats comunes de les eines de depuració inclouen:
- Punts de Trencament (Breakpoints): Permeten aturar l'execució del programa en un punt específic per inspeccionar l'estat del programa.
- Execució Pas a Pas (Step-by-Step Execution): Permet executar el programa una instrucció a la vegada per observar el seu comportament.
- Inspecció de Variables: Permet veure els valors de les variables en temps d'execució.
2.3. Tècniques de Depuració
A més de les eines de depuració, hi ha diverses tècniques que els programadors poden utilitzar per depurar els seus programes:
- Impressió de Missatges de Depuració: Afegir instruccions
printal codi per mostrar el valor de les variables i l'estat del programa en diferents punts de l'execució. - Revisió de Codi: Llegir i revisar el codi amb atenció per identificar possibles errors lògics.
- Divisió i Conquesta: Dividir el programa en parts més petites i provar cada part per separat per identificar on es produeix l'error.
Exemple de Depuració amb Missatges de Depuració
begin
integer i, sum;
sum := 0;
for i := 1 step 1 until 10 do
sum := sum + i;
print("Després de sumar ", i, ": sum = ", sum);
od;
print("Sum total: ", sum);
end;En aquest exemple, s'utilitzen missatges de depuració per mostrar el valor de sum després de cada iteració del bucle.
- Exercicis Pràctics
Exercici 1: Maneig d'Errors
Escriu un programa en ALGOL que llegeixi dos nombres enters de l'usuari i calculi la seva divisió. El programa ha de gestionar l'error de divisió per zero.
Solució
begin
integer a, b, result;
print("Introdueix el primer nombre: ");
read(a);
print("Introdueix el segon nombre: ");
read(b);
if b = 0 then
print("Error: Divisió per zero");
else
result := a / b;
print("Resultat: ", result);
fi;
end;Exercici 2: Depuració amb Missatges de Depuració
Escriu un programa en ALGOL que calculi la suma dels nombres parells de 1 a 20. Utilitza missatges de depuració per mostrar el valor de la suma després de cada iteració.
Solució
begin
integer i, sum;
sum := 0;
for i := 1 step 1 until 20 do
if i mod 2 = 0 then
sum := sum + i;
print("Després de sumar ", i, ": sum = ", sum);
fi;
od;
print("Sum total: ", sum);
end;
- Resum
En aquesta secció, hem après sobre la gestió d'errors i la depuració en ALGOL. Hem vist com classificar els errors, com manejar errors de temps d'execució i com utilitzar tècniques i eines de depuració per identificar i corregir errors en els nostres programes. La pràctica d'aquestes habilitats és essencial per convertir-se en un programador eficient i efectiu.
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
