Gladir.com - Algol 60 - Conditionnel


Les instructions de conditionnelles en langage Algol 60 sont au nombres de deux:

  • IF THEN ... ELSE
  • CASE OF ... END

IF THEN ELSE

L'instruction «IF» permet le teste d'une condition et de choisir d'effectuer des instructions plutôt que d'autre dans le cas ou celle-ci serait vrai. Voici donc les syntaxes:
'IF' expression_vrai 'THEN' instruction_exécuté_si_vrai;
ou
'IF' expression_vrai 'THEN' instruction_exécuté_si_vrai 'ELSE' instruction_exécuté_si_faux;
ou
'IF' expression_vrai1'THEN'
 instruction_exécuté_si_vrai1
'ELSE'
 instruction_exécuté_si_faux;
Vous y remarquerez donc après les syntaxes proposé que l'instruction «ELSE» n'est pas obligatoire.

CASE

Lorsqu'on effectue une série de teste répétitive sur une même variable avec différentes valeurs de la manière suivante:
'IF' valeur = 1 'THEN'
 instruction1_exécuté_si_vrai1
'ELSE' 'IF' valeur = 2 'THEN'
 instruction_exécuté_si_vrai2
'ELSE' 'IF' valeur = 3 'THEN'
 instruction_exécuté_si_vrai3
'ELSE'
 instruction_exécuté_si_faux

On devrait plutôt tenté d'utiliser l'instruction «CASE» laquelle permet une meilleure lisibilité en plus de simplifié la compréhension pour un programmeur externe à votre code. Ainsi, l'instruction CASE permet d'effectuer de nombreuses comparaisons sur un unique résultat. Voici donc sa syntaxe:
'CASE' résultat 'OF'
 valeur1:  instruction1_exécuté_si_vrai1;
 valeur2:  instruction_exécuté_si_vrai2;
 valeur3:  instruction_exécuté_si_vrai3;
 'ELSE'  instruction_exécuté_si_faux;
'END';
L'instruction «ELSE» n'est pas obligatoire, il est tout de même préférable de l'inclure pour prévenir une situation anormale ou d'erreur. Il est également possible d'avoir des ensembles de valeurs appliquable comme cas. Voici un exemple:
'CASE' résultat 'OF'
 5..9:  instruction1;
 11..14:   instruction2;
 10,15,16:   instruction3;
'END';
Dans cette exemple les «instructions1» est exécuté si le résultat a une valeur entre 5 et 9. Ensuite, les «instructions2» est exécuté si le résultat a une valeur entre 11 et 14. Enfin, les «instructions3» est exécuté si le résultat à la valeur 10, 15 ou 16.

Dernière mise à jour: Vendredi, le 3 février 2006