Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Contribuez Discussion :

Les divisions en COBOL


Sujet :

Contribuez

  1. #1
    Candidat au Club
    Les divisions en COBOL
    Pour le langage cobol IL EXISTE QUATRE DIVISIONS VOILA UN EXEMPLE :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    IDENTIFICATION DIVISION.
    PROGRAM-ID. xxxxxxxx.                                            *********************************************************  * PROGRAMME    PROCEDE A L' EDITION DE L'ETAT DES CHEQUES                
     *              POUR  LES COMPTABLE   98  -ETRANGER-    ****************************************************** ENVIRONMENT DIVISION.  
    INPUT-OUTPUT SECTION.                                           
    FILE-CONTROL.                                                 
                  SELECT  CNRATRV ASSIGN TO   'AT_CNRACR_TRIE'
                       ORGANISATION RECORD SEQUENTIAL.
                  SELECT  IMPR1   ASSIGN TO   PRINTER.
    
    DATA DIVISION.
     FILE SECTION.                                                     
      FD  CNRATRV                                                       
          LABEL RECORDS STANDARD BLOCK 10 RECORDS.                                01  ENR-CREDIRENTIER.                                                    
         02 ENR-CRED.                                                         
            05 C-CAT                               PIC  X.                       
            05  C-RECORD-KEY-CREDIT.                                             
              10  C-DOS                          PIC  X(6).                    
              10  C-BENEFICIAIRE                 PIC  XX.                      
              10  C-CODE-ENR                     PIC  X.                       
    *********** ICI C'EST LE TRAITEMENT
    PROCEDURE DIVISION. 
         OUVERT.                                                           
                   ACCEPT CARTE                                                         
                                                                              
                   IF  JOUR-INT   NOT  EQUAL   01                                       
                        DISPLAY CARTE           '   JOUR DIF DE   01     '               
                   DISPLAY '      PRIERE CORRIGER DATE ET SOUMETTRE'                
                   GO   TO   CLOS-FICHIER.                                         
        DEBUT.                                                               
                 OPEN   INPUT  CNRATRV                                                
                 OUTPUT IMPR1.                                          
                 INITIATE ETAT1.                                               
    LECT-CREDIR.                                                               
               READ  CNRATRV  AT END GO TO 800-FIN.
    TRAITEMENT
    
               PERFORM CALCUL
               PERFORM IGR
               PERFORM FIN.
    CALCUL.
               COMPUTE MONTANT = SALAIRE + PRIME
    IGR.
               COMPUTE PRE1   = MONANT * 12 / 5.
    FIN.
                CLOSE CNRATRV IMPR1.
                STOP RUN.

  2. #2
    Membre éclairé
    Merci pour ce code source.

    En complémet de cet exemple sur les divisions, vous trouverez la syntaxe et l'utilisation du DIVIDE dans ce cours sur les instructions arithmétiques.

    Précision: pour le paragraphe CALCUL, il est préférable d'utiliser l'instruction ADD, en effet ADD est plus performant que COMPUTE

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    CALCUL.
               ADD SALAIRE PRIME GIVING MONTANT.

    .

  3. #3
    Membre du Club
    Concernant le cour de M. Guillaume Ventre
    Bonjour,

    J'ai essayé de me connecter sur le cour cobol ainsi que le blog de M. Guillaume Ventre sans reussite.

    J'attende que tous soit en place rapidement.

  4. #4
    Membre à l'essai
    Bonsoir
    Juste une précision qui n'a rien à voir.
    Dans l'exemple du"code" source", vous pouvez dorénavant mettre systématiquement un GOBACK.
    Depuis le Cobol Enterprise et l'apparition du Language Environment, les programmes sont considérés comme des routines appelés par le L.E.

    Le module appelant est , su je ne me trompe pas le CEESTART et donc il vaut mieux coder goback. Cela est plus réaliste.

    Périclès

###raw>template_hook.ano_emploi###