🧱 Structure logique d’un programme COBOL

COBOL est un langage strictement structuré : chaque élément doit être écrit dans une zone bien définie. La construction d’un programme suit une hiérarchie précise :

  DIVISION
  ├── SECTION
  │   ├── PARAGRAPHE (ou ÉTIQUETTE)
  │   │   ├── PHRASE 1.
  │   │   ├── PHRASE 2.
  │   │   └── ...
  │   └── ...
  └── ...
  

Division : C’est la plus grande unité logique. Un programme COBOL contient toujours plusieurs divisions (ex. : IDENTIFICATION DIVISION, DATA DIVISION, PROCEDURE DIVISION...).

Section : Chaque division peut contenir une ou plusieurs sections. Une section regroupe des paragraphes selon leur fonction. Par exemple, la section WORKING-STORAGE dans la DATA DIVISION contient toutes les déclarations de variables.

Paragraphe (ou Étiquette) : C’est un point d’entrée logique dans une section. Il est repéré par un nom (souvent une étiquette en majuscules suivie d’un point). Il hiérarchise les instructions en leur donnant une signification ou un rôle précis dans le programme.

Phrase : Une phrase en COBOL est une instruction complète qui se termine obligatoirement par un point .. Oublier ce point est une erreur fréquente chez les débutants.

Instruction : Il s’agit de l’ordre donné au programme, comme DISPLAY, ACCEPT, ADD, etc. C’est ce que le programme va réellement exécuter.

Voici une illustration simplifiée de la structure :

  --- Zone A ------------------|--- Zone B ------------------------------------------------------
  IDENTIFICATION DIVISION.     |
  PROGRAM-ID. MON-PROG.        |
  DATA DIVISION.               |
  WORKING-STORAGE SECTION.     |
  01  A       PIC 9(2).        |
  01  B       PIC 9(2).        |
  PROCEDURE DIVISION.          |
  DEBUT.                       |    DISPLAY "Début du programme".
                               |    ADD A TO B.
                               |    DISPLAY B.
                               |    STOP RUN.
  

PROCEDURE DIVISION : C’est le "cœur" du programme, où vous écrivez les instructions que le programme doit exécuter. Ces instructions sont organisées en paragraphes, et chaque paragraphe contient des phrases (instructions).

|--- PROCEDURE DIVISION.
|    |
|    |--- NomParagraphe-1.
|    |    |
|    |    |--- Instruction-1.
|    |    |--- Instruction-2.
|    |
|    |--- NomParagraphe-2.
|         |
|         |--- Instruction-3.
|         |--- Instruction-4.
  
PROCEDURE DIVISION.
DEBUT-PROGRAMME.
    DISPLAY "Entrez votre nom : ".
    ACCEPT NOM-UTILISATEUR.
    DISPLAY "Bonjour, " NOM-UTILISATEUR " !".
FIN-PROGRAMME.
    STOP RUN.
  

Paragraphes : DEBUT-PROGRAMME et FIN-PROGRAMME sont des étiquettes pour organiser le code. Vous pouvez leur donner n’importe quel nom (sans espaces ni accents).
Instructions :

  • DISPLAY : Affiche un message ou une variable.
  • ACCEPT : Récupère une saisie de l’utilisateur.
  • STOP RUN : Termine le programme.
  • Point (.) : Chaque instruction ou paragraphe se termine par un point.
Astuce pour débutants : Voyez la PROCEDURE DIVISION comme une recette de cuisine : chaque paragraphe est une étape (ex. : "Préparer les ingrédients", "Cuire"), et chaque phrase est une action précise.