COBOL (1959)

Home

COmmon Business Oriented Language : langage courant orienté métier.

Besoin

Définir un langage commun pour les applications commerciales

Analyse

Un programme COBOL est divisé en 4 parties appelées divisions, à savoir :

Notes

Limitations

Exemples

Un exemple de programme COBOL est :

001010 IDENTIFICATION DIVISION.
001020 PROGRAM-ID. EXEMPLE COBOL.
001030 AUTHOR. JAVAROME.
001040 DATE-WRITTEN. 12 AOUT 1972.
001050 DATE-COMPILED.
001060 ENVIRONMENT DIVISION.
001070 SOURCE-COMPUTER. B-3500.
001080 OBJECT-COMPUTER. B-3500.
001090 INPUT-OUTPUT SECTION.
001100 FILE CONTROL.
001110     SELECT FIPAYE ASSIGN TO TAPE.
001120     SELECT FIPRIM ASSIGN TO TAPE.
001130     SELECT FILIST ASSIGN TO PRINTER.
001140 DATA DIVISION.
001150 FILE SECTION.
001160 FD  FIPAYE
001170     LABEL RECORD STANDARD VA OF ID "FICHPA"
001180     DATA RECORD PAYE.
001190 01  PAYE.
001200     02  INDICATIF.
001210         03  MATRICULE   PC X(10).
001220         03  NOM         PC X(15).
001230         03  PRENOM      PC X(10).
001240     02  ADRESSE         PC X(30).
001250     02  ANCIENNETE      PC 99.
002010     02  FILLER          PC X(24).
002020 FD  FIPRIM
002030     LABEL RECORD STANDARD VA OF ID "FICHPR"
002040     DATA RECORD PRIME.
002050 01  PRIME.
002060     02  PRENOM-P.       PC X(10).
002070     02  NOM-P           PC X(15).
002080     02  ADRESSE-P       PC X(30).
002090     02  MONTANT-P       PC 999.
002100 FD  FILIST
002110     DATA RECORDS ARE LISTE LIGN1 LIGN2.
002120 01  LISTE.
002130     02  FILLER          PC X(47).
002140     02  INDICATIF-L     PC X(35).
002150     02  MONTANT-L       PC 999.
002160     02  FILLER          PC X(47).
002170 01  LIGN1.
002180     02  FILLER          PC X(50).
002190     02  TEXT1           PC X(32).
002200     02  FILLER          PC X(50).
002210 01  LIGN2.
002220     02  FILLER          PC X(50).
002230     02  TEXT2           PC X(47).
002240     02  FILLER          PC X(50).

003010 WORKING-STORAGE SECTION.
003020 01  LIBELLE1.
003030     02  TITRE1  PC X(27) VA "TOTAL DES PLUS DE 10 ANS = ".
003040     02  COMPTEUR1 PC 9(5) VA 0.
003050 01  LIBELLE2.
003060     02  TITRE1  PC X(42) VA "TOTAL DES 10 ANS ET DES MOINS DE 10
003070     "ANS = ".
003080     02  COMPTEUR2 PC 9(5) VA 0.
003090
003100 PROCEDURE DIVISION.
003110 DEBUT.
003120     OPEN INPUT FIPAYE OUTPUT FIPRIM FILIST.
003130 A.
003140     READ FIPAYE AT END GO TO FIN.
003150     MOVE INDICATIF TO INDICATIF-L
003160     MOVE PRENOM TO PRENOM-P
003170     MOVE NOM TO NOM-P
003180     MOVE ADRESSE TO ADRESSE-P.
003190     IF ANCIENNETE     GREATER 10 PERFORM PRIM THRU PRIMF.
003200          MOVE 500 TO MONTANT-L MONTANT-P ADD 1 TO COMPTEUR2.
003210     WRITE PRIME WRITE LIST GO TO A.
003220 PRIM.
003230     MOVE 750 TO MONTANT-L MONTANT-P ADD 1 TO COMPTEUR1.
003240 FIN.
003250     MOVE LIBELLE1 TO TEXT1 WRITE LIGN1.

003235 PRIMF.
003237     EXIT.
004010     MOVE LIBELLE2 TO TEXT2 WRITE LIGN2.
004020     CLOSE FIPAYE FIPRIM FILIST
004030     STOP RUN.
004040 END-OF-JOB.

Voir

Home