COmmon Business Oriented Language : langage courant orienté métier.
Définir un langage commun pour les applications commerciales
Un programme COBOL est divisé en 4 parties appelées divisions, à savoir :
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.