Leçons du module (1/2)
Paragraphes et PERFORM
En COBOL, la modularité et la structuration logique du code au sein de la PROCEDURE DIVISION ne se font pas via des fonctions ou des méthodes, mais plutôt à travers les Paragraphes et l’instruction PERFORM.
Définition des paragraphes
Un paragraphe est une section étiquetée de code qui commence par un nom à la colonne 8 (Zone A) terminé par un point ., suivi d’une séquence d’instructions à la colonne 12 (Zone B).
STAMPA-MESSAGGIO.
DISPLAY "Questo è un paragrafo!".
Les paragraphes permettent de diviser des programmes potentiellement très longs en blocs réutilisables et auto-documentés.
Exécution de paragraphes via PERFORM
L’instruction PERFORM appelle et exécute un paragraphe, après quoi elle renvoie le contrôle du flux à la ligne immédiatement consécutive à l’appel du PERFORM.
PROCEDURE DIVISION.
MAIN-PROCEDURE.
DISPLAY "Inizio programma...".
PERFORM ELABORA-DATI.
DISPLAY "Fine programma.".
STOP RUN.
ELABORA-DATI.
DISPLAY "Sto elaborando i dati in memoria...".
Dans l’exemple ci-dessus :
- Le
DISPLAYdansMAIN-PROCEDUREest exécuté. PERFORM ELABORA-DATIdévie l’exécution vers le paragrapheELABORA-DATI.- Une fois le paragraphe
ELABORA-DATIterminé, l’exécution revient àMAIN-PROCEDUREpour afficher "Fine programma." et s’arrêter avecSTOP RUN..
À vous de jouer
Définissez un paragraphe nommé DISPLAY-TOTAL qui affiche 'TOTAL IS DONE' à l’aide de DISPLAY, et appelez-le au sein de MAIN-PROCEDURE via PERFORM avant d’arrêter le programme.
Afficher l'indice
Écrivez PERFORM DISPLAY-TOTAL. à la colonne 12, et sous le bloc MAIN-PROCEDURE déclarez le paragraphe DISPLAY-TOTAL. à la colonne 8.
Solution disponible après 3 tentatives
Appelez séquentiellement deux paragraphes, d’abord INITIALIZE-DATA puis PROCESS-DATA, au sein du bloc MAIN-PROCEDURE.
Afficher l'indice
Insérez les deux instructions PERFORM dans l’ordre séquentiel à la colonne 12.
Solution disponible après 3 tentatives