DATA DIVISION
La DATA DIVISION est la division où l'on décrit toutes les données que le programme va utiliser : variables, constantes, structures de données, zones de travail, etc. C'est ici que l'on définit les formats (chaînes, nombres, décimales…) grâce à la clause PIC (Picture). Sans cette division (ou au moins une section comme WORKING-STORAGE SECTION), on ne peut pas manipuler de données dans la PROCEDURE DIVISION.
Exemple de code : Déclarer et afficher des variables
IDENTIFICATION DIVISION.
PROGRAM-ID. VARIABLES-EXEMPLE.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 NOM PIC X(20) VALUE "Alice".
01 AGE PIC 99 VALUE 28.
01 SALAIRE PIC 9(5)V99 VALUE 2450.75.
01 MESSAGE PIC X(40).
PROCEDURE DIVISION.
MOVE "Bonjour, je m'appelle " TO MESSAGE.
DISPLAY MESSAGE NOM.
DISPLAY "J'ai " AGE " ans.".
DISPLAY "Mon salaire est de " SALAIRE " euros.".
STOP RUN.
Télécharger le code
Résultat attendu à l'exécution
La sortie dans la console sera :
Bonjour, je m'appelle Alice
J'ai 28 ans.
Mon salaire est de 02450.75 euros.
Note : Le format d'affichage des nombres peut varier légèrement selon le compilateur (espaces, zéros non significatifs), mais le contenu reste correct. On verra plus tard comment améliorer l'affichage avec des clauses d'édition.
Explication détaillée – ligne par ligne (focus sur DATA DIVISION)
DATA DIVISION.
Nom de la division (obligatoire si on déclare des données). Suivie d’un point.WORKING-STORAGE SECTION.
Section la plus courante pour les variables temporaires du programme (zones de travail). Il existe d’autres sections commeFILE SECTION(pour les fichiers) ouLINKAGE SECTION(pour les paramètres), mais on commence parWORKING-STORAGE.01 NOM PIC X(20) VALUE "Alice".
Déclare une variable de niveau 01 nomméeNOM.
PIC X(20)= chaîne de 20 caractères (X = alphanumérique).
VALUE "Alice"= initialise la variable avec cette valeur.
Le niveau 01 signifie une zone élémentaire complète (pas de sous-champs pour l’instant).01 AGE PIC 99 VALUE 28.
PIC 99= nombre entier sur 2 chiffres (9 = chiffre numérique).
Valeur initiale : 28.01 SALAIRE PIC 9(5)V99 VALUE 2450.75.
PIC 9(5)V99:
• 9(5) = 5 chiffres avant la virgule
• V = position de la virgule implicite (pas stockée)
• 99 = 2 chiffres après la virgule
→ Total : 7 chiffres numériques avec 2 décimales.
Valeur : 2450.75 (affichée avec zéros à gauche si besoin).01 MESSAGE PIC X(40).
Chaîne vide de 40 caractères, prête à recevoir du texte viaMOVE.
Rappels importants pour débutants :
• Toutes les variables sont déclarées avant utilisation.
•
• Les niveaux commencent à 01 pour les groupes élémentaires.
• Les noms de variables : lettres, chiffres, tirets (pas d’espaces, max ~30 caractères).
• Convention : majuscules + tirets pour les noms COBOL.
• Toutes les variables sont déclarées avant utilisation.
•
PIC définit le « masque » (format) de la donnée.• Les niveaux commencent à 01 pour les groupes élémentaires.
• Les noms de variables : lettres, chiffres, tirets (pas d’espaces, max ~30 caractères).
• Convention : majuscules + tirets pour les noms COBOL.
Prochain sujet : MOVE, ACCEPT et manipulations simples de données.