Echec routine
remarque : Cette routine est toujours prete et se declenche des qu'une erreur
apparait dans la ou les routine(s) en cours
remarque : Elle fonctionne avec une liste d'Objets d'Erreurs associes a des
solutions
remarque : elle peut traiter plusieurs erreurs differentes en mÍme temps,
a des rythmes differents
1 index
repeter
in Routine Courante,
Erreur
jusqu'a Erreur = present
Routine Echouee = Routine Courante
remarque : en cas d'erreur on stoppe momentanement la routine echouee
pause Routine Echouee
in Erreur, Motif de l'Erreur, Routine Courante
out,Motif de l'Erreur
si Routine Echouee
= Routine Courante
et Erreur Precedente
= Motif de l'erreur
alors routine Solution
Absente
Routine Echouee = Routine Courante
Erreur Precedente = Motif de l'erreur
remarque : teste si l'erreur est repertoriee
in Liste des Motifs d'Erreur,
Nombre d'Objets d'Erreur
X=0
Y=0
repeter
X=X+1
in Liste
des Motifs d'Erreur, Objet(X)
si
Motif de l'Erreur = Objet(X)
alors
Y = X
alors
X = Nombre d'Objets d'Erreur
jusqu'a X = Nombre d'Objets d'Erreur
remarque : si l'erreur n'est pas repertoriee, appel de Solution absente
si Y = 0
alors routine Solution
Absente
remarque : teste si les solutions proposees sont suffisantes
in Objet(Y), Nombre de Solutions
Z = 0
repeter
Z = Z + 1
routine Solution(Z)
remarque : apres l'execution de la Solution, la routine reprend
reprise Routine
Echouee(Erreur)
in Routine Echouee,
Erreur
si
Erreur = absent
alors
index 1
jusqu'a Z = Nombres de Solutions
repeter
reprise Routine
Echouee(Erreur)
si
Erreur = absent
alors
index 1
remarque : en dernier recours, invente une solution
routine Solution
Absente
jusqu'a Erreur = absent
index 1