Exercice 8 : perform

Micro-exercice

Objectif : utiliser PERFORM pour organiser un programme en étapes. Au lieu d’écrire tout “en bloc”, vous allez créer un paragraphe (une petite partie de programme) et l’exécuter. C’est un des réflexes les plus importants : structurer et relire plus facilement.

Ce que vous pratiquez

  • Créer un paragraphe (ex : 100-AFFICHER).
  • Appeler ce paragraphe avec PERFORM.
  • Comprendre l’idée “programme = une suite d’étapes”.

Repère sur les colonnes

  • Zone A : colonnes 8 à 11 (7 espaces pour divisions, sections et paragraphes).
  • Zone B : colonnes 12 à 72 (11 espaces pour instructions).

Le paragraphe commence en zone A, et les instructions du paragraphe sont en zone B.

Exemple minimal COBOL Format fixe
Télécharger le code
       IDENTIFICATION DIVISION.
       PROGRAM-ID. EXO-PERFORM-08.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  WS-NOM               PIC X(25) VALUE "VISITEUR".

       PROCEDURE DIVISION.
           PERFORM 100-AFFICHER-BIENVENUE
           PERFORM 200-AFFICHER-FIN
           STOP RUN.

       100-AFFICHER-BIENVENUE.
           DISPLAY "Bonjour " WS-NOM
           DISPLAY "Exemple de PERFORM : une etape."
           .

       200-AFFICHER-FIN.
           DISPLAY "Fin du programme."
           .

Lecture simple

Ici, le programme principal appelle deux étapes : 100-AFFICHER-BIENVENUE puis 200-AFFICHER-FIN. Chaque étape est un paragraphe. Cela rend la logique plus lisible : on voit tout de suite l’ordre d’exécution.

À retenir : PERFORM exécute un paragraphe. Le paragraphe se termine par un point (ici, un point seul sur une ligne logique), ce qui aide à délimiter l’étape.

Votre micro-exercice

Faites ces 3 modifications :

  1. Ajoutez un paragraphe 150-AFFICHER-INFO qui affiche “Etape intermediaire.”
  2. Insérez un PERFORM 150-AFFICHER-INFO entre les deux PERFORM existants.
  3. Changez la valeur de WS-NOM et vérifiez que le message change.

Erreur fréquente à éviter

Oublier le point qui termine un paragraphe. Dans beaucoup de styles COBOL, le point sert de frontière. Si vous oubliez cette frontière, un enchaînement peut devenir moins clair (surtout quand vous ajoutez des tests et des boucles).

Autre piège : donner des noms de paragraphes trop vagues. Un bon nom explique l’action (afficher, calculer, lire, écrire), ce qui rend le programme compréhensible en quelques secondes.

Conseil : lisez la PROCEDURE DIVISION comme un plan : “faire ceci, puis cela, puis finir”.