IDENTIFICATION DIVISION.
PROGRAM-ID. EXO-COMPUTE-14.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 WS-A PIC 999 VALUE 000.
01 WS-B PIC 999 VALUE 000.
01 WS-RESULTAT PIC 9(6) VALUE 000000.
PROCEDURE DIVISION.
DISPLAY "Entrez A (000 a 999) : "
ACCEPT WS-A
DISPLAY "Entrez B (000 a 999) : "
ACCEPT WS-B
COMPUTE WS-RESULTAT = (WS-A * 2) + (WS-B / 2)
DISPLAY "Resultat : " WS-RESULTAT
STOP RUN.
Lecture simple
COMPUTE permet d’écrire une formule. Ici : on prend WS-A, on le multiplie par 2, puis on ajoute la moitié de WS-B. Les parenthèses rendent la formule claire : vous voyez tout de suite les deux morceaux.
Votre micro-exercice
Faites ces 3 modifications :
- Changez la formule : (WS-A + WS-B) * 3.
- Ajoutez un second résultat WS-RESULTAT-2 et calculez : WS-A * WS-B.
- Affichez les deux résultats avec des libellés clairs.
Erreur fréquente à éviter
Oublier la taille du résultat. Si vous calculez 999 * 999, vous obtenez 998001. Si votre champ résultat est trop petit, vous perdez des chiffres ou vous obtenez une valeur incohérente.
Autre piège : diviser par 2 avec des champs entiers. Selon les formats, vous pouvez perdre la partie décimale. Pour débuter, ce n’est pas grave : l’objectif est de comprendre la structure de COMPUTE.