Les Constantes en COBOL

Comprendre les variables constantes et constantes figuratives

Introduction

En COBOL, une variable constante est une variable dont la valeur est définie au départ et reste inchangée durant tout le programme.

Retour à la section

Contrairement aux variables classiques qui peuvent voir leur valeur modifiée lors de l'exécution, les constantes conservent toujours leur valeur initiale.

Types de constantes

Constantes numériques

Ces constantes contiennent des valeurs numériques fixes. Elles sont souvent utilisées pour des taux, des coefficients ou des valeurs standards.

01 WS-TAUX      PIC 9(3)V9(2) VALUE 2.75.
01 WS-SEUILLE   PIC 9(4)     VALUE 1000.

Constantes alphanumériques

Ces constantes contiennent des chaînes de caractères fixes. Elles sont utiles pour des messages standards, des codes ou des libellés.

01 WS-SIGNE     PIC X(03)    VALUE "OUI".
01 WS-MESSAGE   PIC X(20)    VALUE "ERREUR DE SAISIE".

Constantes figuratives

COBOL propose des mots-clés spéciaux appelés constantes figuratives qui représentent des valeurs particulières. Ces constantes rendent le code plus lisible et plus maintenable.

Constante Description
ZERO / ZEROS / ZEROES Représente un ou plusieurs zéros
SPACE / SPACES Représente des espaces (" ")
HIGH-VALUE / HIGH-VALUES Valeur la plus élevée (X'FF')
LOW-VALUE / LOW-VALUES Valeur la plus faible (X'00')
QUOTE / QUOTES Représente les guillemets (" ou ')
ALL Utilisé pour remplir avec un caractère répété

ZEROES

01 WS-SOLDE      PIC 9(5)     VALUE ZEROES.

SPACES

01 WS-NOM        PIC X(30)    VALUE SPACES.

HIGH-VALUES

01 WS-FIN       PIC X(1)     VALUE HIGH-VALUES.

LOW-VALUES

01 WS-DEBUT     PIC X(1)     VALUE LOW-VALUES.

QUOTES

01 WS-CITATION  PIC X(50)    VALUE QUOTE "Veni, vidi, vici" QUOTE.

ALL

01 WS-LIGNE     PIC X(20)    VALUE ALL "-".

Explications

ZEROES

01 WS-SOLDE      PIC 9(5)     VALUE ZEROES.

// Initialise WS-SOLDE avec cinq zéros : 00000

SPACES

01 WS-NOM        PIC X(30)    VALUE SPACES.

// Remplit WS-NOM avec 30 espaces vides (\" \")

HIGH-VALUES

01 WS-FIN        PIC X(1)     VALUE HIGH-VALUES.

// Donne à WS-FIN la valeur maximale possible (X'FF')

LOW-VALUES

01 WS-DEBUT      PIC X(1)     VALUE LOW-VALUES.

// Donne à WS-DEBUT la valeur minimale (X'00')

QUOTES

01 WS-CITATION   PIC X(50)    VALUE QUOTE \"Veni, vidi, vici\" QUOTE.

// Entoure la citation de guillemets automatiques

ALL

01 WS-LIGNE      PIC X(20)    VALUE ALL \"-\".

// Remplit WS-LIGNE avec 20 tirets consécutifs (\"--------------------\")

En résumé

Les constantes figuratives en COBOL offrent plusieurs avantages :

  • Elles rendent le code plus lisible et plus expressif
  • Elles garantissent l'utilisation de valeurs standardisées
  • Elles facilitent la maintenance du code
  • Elles évitent les erreurs de saisie de valeurs littérales

Nous vous encourageons à les utiliser systématiquement dans vos programmes COBOL.