Exercice 4 : if

Micro-exercice

Objectif : utiliser IF pour prendre une décision simple. Vous allez saisir un nombre, puis afficher un message différent selon qu’il est supérieur, égal ou inférieur à une valeur. Cet exercice vous apprend le réflexe “tester → décider → afficher”.

Ce que vous pratiquez

  • Lire une valeur numérique avec ACCEPT dans une variable PIC 99.
  • Écrire un test simple avec IF .
  • Fermer proprement le bloc avec END-IF .

Repère sur les colonnes

  • Zone A : colonnes 8 à 11 (7 espaces pour divisions/déclarations).
  • Zone B : colonnes 12 à 72 (11 espaces pour instructions).

Le bloc <pre> conserve les espaces : l’alignement reste visible.

Exemple minimal COBOL Format fixe
Télécharger le code
       IDENTIFICATION DIVISION.
       PROGRAM-ID. EXO-IF-04.

       DATA DIVISION.
       WORKING-STORAGE SECTION.
       01  WS-SEUIL             PIC 99 VALUE 10.
       01  WS-VALEUR            PIC 99 VALUE 00.

       PROCEDURE DIVISION.
           DISPLAY "Entrez un nombre (00 a 99) : "
           ACCEPT WS-VALEUR
           IF WS-VALEUR > WS-SEUIL
               DISPLAY "Plus grand que le seuil."
           END-IF
           IF WS-VALEUR = WS-SEUIL
               DISPLAY "Egal au seuil."
           END-IF
           IF WS-VALEUR < WS-SEUIL
               DISPLAY "Plus petit que le seuil."
           END-IF
           STOP RUN.

Ce que fait le programme

1) Le programme demande un nombre.
2) Il compare la saisie à un seuil (ici 10).
3) Il affiche un message différent selon le résultat de la comparaison.

À retenir : IF permet de tester une condition. Ici, on utilise trois tests séparés pour bien voir les cas “>”, “=”, “<”. Ensuite, vous apprendrez à faire le même travail avec ELSE .

Votre micro-exercice

Faites ces 3 modifications :

  1. Changez la valeur du seuil (par exemple 25).
  2. Ajoutez un message supplémentaire quand la valeur est exactement 00.
  3. Ajoutez une seconde saisie (un autre nombre) et comparez les deux nombres.

Erreur fréquente à éviter

Saisir autre chose qu’un nombre dans une variable numérique. Avec PIC 99 , si l’utilisateur tape des lettres, le résultat peut être imprévisible selon l’environnement.

Autre piège : oublier END-IF dans un code qui s’allonge. Sur un petit exemple, on s’en sort, mais dès qu’il y a plusieurs niveaux, fermer clairement les blocs évite des erreurs.

Conseil : testez plusieurs valeurs (05, 10, 12, 99) pour vérifier que vous voyez bien les trois messages selon les cas.