IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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

Cobol Discussion :

[PC-GCobol][Débutant] Calcul prixttc : erreurs de compilation


Sujet :

Cobol

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Points : 5
    Points
    5
    Par défaut [PC-GCobol][Débutant] Calcul prixttc : erreurs de compilation
    bonjour,

    je dois écrire une suite d'instructions sur Gcobol qui saisit en centimes le prix HT d'un article et le nombre d'articles et qui affiche le prix TTC corespondant en euro et centimes.Je l'ai fait mais apparemment il y a des erreurs puisque il ne compile pas jusqu'au bout....Je voudrai votre aide svp!!!Je vous remercie
    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
           IDENTIFICATION DIVISION.
           PROGRAM-ID.EXO7.
           ENVIRONMENT DIVISION.
           DATA DIVISION.
           WORKING-STORAGE SECTION.
           77  PRIXHT PIC 99999999.
           77  PRIXHTTOTAL PIC 999999.
           77  ARTICLES PIC 99999.
           77  TVA PIC Z(1),999.
           77  POURCENTAGE PIC Z(8),999.
           PROCEDURE DIVISION.
           DEBUT.
               ACCEPT PRIXHT
               ACCEPT ARTICLES
               MULTIPLY ARTICLES BY PRIXHT
               MOVE 0196 TO TVA
               MULTIPLY TVA BY PRIXHT GIVING POURCENTAGE
               ADD POURCENTAGE TO PRIXHT GIVING PRIXTTC
               DISPLAY PRIXTTC
               STOP RUN.

  2. #2
    Expert confirmé
    Homme Profil pro
    ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Inscrit en
    Juin 2007
    Messages
    2 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 096
    Points : 4 155
    Points
    4 155
    Par défaut
    Citation Envoyé par airmimi59 Voir le message
    bonjour.... il ne compile pas jusqu'au bout..
    Bonjour.

    Et quelles sont les erreurs de compilation ??

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    merci de m'avoir répondu

    sa m'écrit sa :

    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
    0001        IDENTIFICATION DIVISION.
    0002        PROGRAM-ID.EXO7.
    0003        ENVIRONMENT DIVISION.
    0004        DATA DIVISION.
    0005        WORKING-STORAGE SECTION.
    0006        77  PRIXHT PIC 99999999.
    0007        77  PRIXHTTOTAL PIC 999999.
    0008        77  ARTICLES PIC 99999.
    0009        77  TVA PIC Z(1),999.
    0010        77  POURCENTAGE PIC Z(8),999.
    0011        PROCEDURE DIVISION.
    0012        DEBUT.
    0013            ACCEPT PRIXHT
    0014            ACCEPT ARTICLES
    0015            MULTIPLY ARTICLES BY PRIXHT
    0016            MOVE 0196 TO TVA
    0017            MULTIPLY TVA BY PRIXHT GIVING POURCENTAGE
    
    Type incorrect
    vers la ligne 17
    Mot: by
    Nb symboles. . . .7/2048
    Taille Ram........63/32000
    Taille Code.......26/32000
    Compilation terminee

  4. #4
    Expert confirmé
    Homme Profil pro
    ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Inscrit en
    Juin 2007
    Messages
    2 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 096
    Points : 4 155
    Points
    4 155
    Par défaut
    Je pense que c'est ta variable TVA qui est déclarée en numérique édité Z(1),999 qui ne devrait pas figurer comme opérande.
    Utilise le numérique étendu ou condensé et déclare DECIMAL-POINT is COMMA ou utilise le "." dans la constante à mettre dans TVA.

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    je viens de débuter en cobol...et je n'ai pas très bien compris ce que tu m'as dit

  6. #6
    Expert confirmé
    Homme Profil pro
    ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Inscrit en
    Juin 2007
    Messages
    2 096
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : ANCIEN Consultant/Formateur/Développeur AS/400, iSeries, System i et Cobol
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2007
    Messages : 2 096
    Points : 4 155
    Points
    4 155
    Par défaut
    Citation Envoyé par airmimi59 Voir le message
    je viens de débuter en cobol...et je n'ai pas très bien compris ce que tu m'as dit
    Je te souhaite la bienvenue dans le Cobol et sur le forum, mais comme tu l'as déjà bien commencé, un petit effort personnel de ta part en recherche documentaire et sur le net sera fortement apprécié par les membres de notre forum et seront plus disposés à t'apporter toute l'aide dont tu auras besoin. Ceci cordialement dit :

    Numérique édité : pour l'édition et l'affichage par exemple PIC ZZZ.ZZ9,99.
    Numérique étendu par exemple PIC 9(6)V99.
    Numérique condensé exemple PIC 9(6)V99. COMP-3.

    DECIMAL-POINT IS COMMA on le met ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    000110 Environment Division.
    000120 Configuration Section.
    000150 Special-Names.
    000160     Decimal-point is comma.
    000180 Input-Output Section.
    pour dire que dans toutes les variables ou les constantes la "," (virgule) sera utilisée à la place du "." pour représenter le point décimal séparant la partie entière de la partie décimale des nombres.

    Dans ton cas :
    - tu mets DECIMAL IS COMMA là où il faut.
    - tu déclare TVA à PIC 9V999.
    - tu changes la constante 0196 par 0,196.

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Je te remercie pour ton aide
    merci pour tes réponses
    a bientot j'espère

  8. #8
    Membre confirmé Avatar de Homer-ac
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    449
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 449
    Points : 586
    Points
    586
    Par défaut
    comme indiqué TVA doit être déclaré comme une valeur, pas une zone d'édition soit qque chose comme Pic 9V999.
    - Decimal point is comma pour le masque d'edition : POURCENTAGE
    - Un blanc entre PROGRAM-ID. et EXO7. (ça peut passer ou non en fonction du compilateur)
    - Il manque une définition : PRIXTTC
    Avec ces modifs, ça devrait rouler sauf qu'à l'exécution il est conseillé d'ajouter un contrôle de numéricité des données externes (par essence douteuses) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    If PRIXHT not numeric or ARTICLES not numeric then
       Display "Données recues : "  PRIXHT " " ARTICLES "  INVALIDES !''
       Move 8 to RETURN-CODE
       STOP RUN
    end-if

  9. #9
    Candidat au Club
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Juillet 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2011
    Messages : 1
    Points : 2
    Points
    2
    Par défaut
    j'ai esséyé votre code Mr Hédhili Jaïdane mais GCobom m'afficher toujorours cette belle erreur : Le mot Data est attendu .
    just à la ligne de " Configuration Section." !!!

    koi faire ?!!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Débutant en c# "erreur de compilation"
    Par Just-Soft dans le forum C#
    Réponses: 6
    Dernier message: 27/08/2008, 13h51
  2. Réponses: 15
    Dernier message: 01/11/2005, 13h32
  3. [MASM32][Débutant] Erreur de compilation
    Par Priest dans le forum x86 32-bits / 64-bits
    Réponses: 6
    Dernier message: 02/10/2005, 02h06
  4. Réponses: 12
    Dernier message: 26/08/2005, 10h02
  5. [Débutant]Erreur de compilation inconprehensible
    Par @r$£~%[ dans le forum C++
    Réponses: 15
    Dernier message: 14/08/2005, 20h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo