Tous les articles par Mr COBOL

Exemple – ADD

Voici des exemples de programme utilisant le ADD :

IDENTIFICATION DIVISION.
PROGRAM-ID.  ADD.
AUTHOR.      LA COMMUNAUTE DU COBOL.

DATA DIVISION.
WORKING-STORAGE SECTION.

01  WS-AUXILIARES.
    05  VALEUR-1      PIC 9(009)       VALUE ZEROES. 
    05  VALEUR-2      PIC 9(009)       VALUE ZEROES. 
    05  VALERR-3      PIC 9(009)       VALUE ZEROES. 

PROCEDURE DIVISION.

001-INIT.

Exemple 1

    MOVE 8 TO VALEUR-1
    ADD  3 TO VALEUR-1

    DISPLAY "VALEUR-1 " VALEUR-1
	
STOP RUN.
 
* Resultat du test:

* VALEUR-1 000000011

Exemple 2

    MOVE 7      TO VALEUR-1
    MOVE 8      TO VALEUR-2
    ADD VALOR-1 TO VALEUR-2	

    DISPLAY "VALEUR-1 " VALEUR-1 
    DISPLAY "VALEUR-2 " VALEUR-2 
	
STOP RUN.

* Resultat du test:

* VALEUR-1 000000007
* VALEUR-2 000000015

Exemple 3

    MOVE 4              TO VALEUR-1
    MOVE 2              TO VALEUR-2
    MOVE 1              TO VALEUR-3
    ADD VALEUR-1 VALEUR-2 TO VALEUR-3 
	
    DISPLAY "VALEUR-1 " VALEUR-1 
    DISPLAY "VALEUR-2 " VALEUR-2 
    DISPLAY "VALEUR-3 " VALEUR-3 
	
STOP RUN.

* Resultat du test:

* VALEUR-1 000000004
* VALEUR-2 000000002
* VALEUR-3 000000007

Exemple 4

    MOVE 30        TO VALEUR-1
    MOVE 20        TO VALEUR-2
    ADD 50 VALEUR-1 TO VALEUR-2	

    DISPLAY "VALEUR-1 " VALEUR-1 
    DISPLAY "VALEUR-2 " VALEUR-2 
	
STOP RUN.
 
* Resultat du test:

* VALEUR-1 000000030
* VALEUR-2 000000100

Exemple 5

    MOVE 30 TO VALEUR-1
    MOVE 20 TO VALEUR-2
    MOVE 40 TO VALEUR-3
    ADD 60 VALEUR-1 VALEUR-2 GIVING VALEUR-3	

    DISPLAY "VALEUR-1 " VALEUR-1 
    DISPLAY "VALEUR-2 " VALEUR-2 
    DISPLAY "VALEUR-3 " VALEUR-3 
	
STOP RUN.

* Resultat du test:

* VALEUR-1 000000030
* VALEUR-2 000000020
* VALEUR-3 000000110

Exemple 6

IDENTIFICATION DIVISION.
PROGRAM-ID. ADD.
AUTHOR.     LA COMMUNAUTE DU COBOL. 
DATA DIVISION.

WORKING-STORAGE SECTION.
01  WS-AUXILIARES.
    05  WS-A    PIC 9(002).
    05  WS-X    PIC 9(002).
    05  WS-Y    PIC 9(002).
    05  WS-Z    PIC 9(002).
	
PROCEDURE DIVISION.

    SET WS-X TO 10.
    SET WS-Y TO 25.
    ADD WS-X WS-Y TO WS-A GIVING WS-Z.
    DISPLAY "A     = " WS-A
    DISPLAY "X + Y = " WS-Z.
	
STOP RUN.

* Resultat du test:

A     = 00
X + Y = 35

Exemple – ACCEPT

Voici des exemples de programme utilisant le ACCEPT :

Exemple 1

IDENTIFICATION DIVISION.
PROGRAM-ID.  ACCEPT.
AUTHOR.      LA COMMUNAUTE DU COBOL.

* Cet exemple montre comment ACCEPT peut être utilisé
* pour obtenir la date et heure du système.

* Le YYYYMMDD dans « CEPT  DATE-JOUR FROM DATE YYYYMMDD. ».
* est une commande de formatage qui assure qu'un contenu de 
* données d'une Année à 4 chiffres.
* Si non utilisé, l'année fournie par le système sera
* de seulement deux chiffres qui peuvent causer 
* des problèmes en l'an 2000.

DATA DIVISION.
WORKING-STORAGE SECTION.

* YYYYMMDD

01  DATE-JOUR.
    05  ANNEE-DATE      PIC 9(004).
    05  MOIS-DATE       PIC 9(002).
    05  JOUR-DATE       PIC 9(002).

* YYYYDDD

01  JOUR-ANNEE.
    05  FILLER          PIC 9(004).
    05  JOUR-DE-ANNNEE  PIC 9(003).

* HHMMSSss   s = S/100

01  TEMPS-DATE.
    05  HEURE-DATE     PIC 9(002).
    05  MINUTE-DATE    PIC 9(002).
    05  FILLER         PIC 9(004).

PROCEDURE DIVISION.

001-INIT.

    ACCEPT  DATE-JOUR   FROM DATE YYYYMMDD.
    ACCEPT  JOUR-ANNEE  FROM DAY YYYYDDD.
    ACCEPT  TEMPS-DATE  FROM TIME.

    DISPLAY "La date est le " JOUR-DATE "/" MOIS-DATE 
            "/" ANNEE-DATE.
    DISPLAY "Aujourd''hui, on est le jour " JOUR-DE-ANNNEE 
            " de l''année ".
    DISPLAY "L''heure est " HEURE-DATE ":" MINUTE-DATE.

    STOP RUN.

Résultat du test : réalisé le 01/02/2023

La date est le 01/02/2023
Aujourd'hui, on est le jour 32 de l'année
L'heure est 10:38

Exemple 2

IDENTIFICATION DIVISION.
PROGRAM-ID.  ACCEPT.
AUTHOR.      LA COMMUNAUTE DU COBOL.

DATA DIVISION.
WORKING-STORAGE SECTION.

01  WSS-CHAMPS-AUXILIARES.
    05 WS-YYYYMMDD        PIC  X(008)    VALUE SPACES. 
    05 WS-YYMMDD          PIC  X(006)    VALUE SPACES. 
    05 WS-HHMMSS          PIC  X(006)    VALUE SPACES. 
    05 WS-HHMMSSCC        PIC  X(008)    VALUE SPACES. 
    05 WS-JOUR-SEMAINE    PIC  9(001)    VALUE ZEROES. 
    05 WS-ANNEE-JOUR      PIC  9(005)    VALUE ZEROES. 

PROCEDURE DIVISION.
   
001-INIT.

    ACCEPT WS-YYYYMMDD     FROM DATE YYYYMMDD                      
    ACCEPT WS-YYMMDD       FROM DATE                               
    ACCEPT WS-HHMMSS       FROM TIME                               
    ACCEPT WS-HHMMSSCC     FROM TIME                               
    ACCEPT WS-JOUR-SEMAINE FROM DAY-OF-WEEK                        
    ACCEPT WS-ANNEE-JOUR   FROM DAY                                

    DISPLAY "Date du jour              " WS-YYYYMMDD                         
    DISPLAY "Date du jour              " WS-YYMMDD                                    
    DISPLAY "Heure du jour             " WS-HHMMSS                                    
    DISPLAY "Heure du jour             " WS-HHMMSSCC                                  
    DISPLAY "Jour de la semaine        " WS-JOUR-SEMAINE                         
    DISPLAY "Année et jour de l''année " WS-ANNEE-JOUR                                    

    STOP RUN.

Résultat du test : réalisé le 01/02/2023

Date du jour             20230201
Date du jour             230201
Heure du jour            103617
Heure du jour            10361779
Jour de la semaine       3
Année et jour de l'année 23032