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.

  1. 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ó.

  1. 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 print al 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.

  1. 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;

  1. 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.

© Copyright 2024. Tots els drets reservats