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] [Débutant] Problème de virgule


Sujet :

Cobol

  1. #1
    Membre averti Avatar de Goundy
    Profil pro
    Étudiant
    Inscrit en
    Avril 2005
    Messages
    605
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2005
    Messages : 605
    Points : 386
    Points
    386
    Par défaut [PC] [Débutant] Problème de virgule
    Bonjour,

    J'ai commencé le cobol à l'école il y a quelques jours, et hop voilà j'ai un labo à faire mais je plante et je ne comprends pas pourquoi :s
    C'est une appli qui calcule le sinus d'un angle selon la loi de Mac Laurin
    Bon, mon programme doit faire ceci: (mais j'ai des probs :s)
    Demande à la saisie d'un angle en radian
    demande la saisie du rang de calcul
    Calcul et affiche le resultat
    Afficher une boite de dialogue: voulez vous travaillez avec le même angle?
    si l'utilisateur répond Oui on redemande le rang uniquement
    S'il répond Non, on affiche une autre boite de dialogue:
    Voulez vous calculer le sinus d'un autre angle? Donc s'il répond oui on refait tout, sinon on quitte l'application.
    Ben voilà j'ai pas vraiment ce résultat et de plus quand je saisis un angle avec virgule et que je fais Enter, il me le réaffiche sans virgule :s
    Voilà le code source et merci d'avance pour l'aide:
    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
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
           IDENTIFICATION DIVISION.
           PROGRAM-ID.                      Sin-McLaurin.
           INSTALLATION.                    comment-entry.
           DATE-WRITTEN.                    1999/XX/XX - 99:99:99.
           DATE-COMPILED.                   1999/XX/XX - 00:00:00.
    
          ******************************************************************
           ENVIRONMENT DIVISION.
           CONFIGURATION SECTION.
           SOURCE-COMPUTER.                 computer-name.
           OBJECT-COMPUTER.                 computer-name.
           SPECIAL-NAMES.
               DECIMAL-POINT is COMMA.
    
          *****************************************************************
           DATA DIVISION.
           WORKING-STORAGE SECTION.
          ******************* Section de la date **************************
           01  System-Date.
               03  sYear         pic x(4).
               03  sMonth        pic x(2).
               03  sDay          pic x(2).
          *****************************************************************
           01  Angle pic S9v9(6).
           01  N     pic 9(2) value zero.
           01  i     pic 9(2) value zero.
           01  ii     pic 9(2) value zero.
           01  Terme pic S9v9(6) value zero.
           01  Sinus pic S9V9(6).
           01  Flag  pic 9 value zero.
    
           78  MB-OK           value 1.
           78  MB-YES-NO       VALUE 2.
           78  MB-DEFAULT-ICON VALUE 1.
           78  MB-ERROR-ICON   VALUE 2.
    
           01  UserReply     pic 9.
     
    
           LINKAGE SECTION.
          * [ Data Desciption Entry ....]
    
           SCREEN SECTION. 
           01 HeaderScreen.
               02 BLANK SCREEN BACKGROUND-COLOR 7 FOREGROUND-COLOR 0.
               02 LINE 1 COL 1 VALUE "Laboratoire 3 de Belkacem et Bahizi".
               02 COLUMN 68 VALUE "Le ".
               02 COLUMN 71 
                      PIC Z9 USING sDay of System-Date.
               02 COLUMN 73 VALUE "/".
               02 COLUMN 74 PIC Z9 USING sMonth of System-Date.
               02 COLUMN 76 VALUE "/".
               02 COLUMN 77 PIC 9999 USING sYear of System-Date.
               02 LINE 2 COL 1 VALUE "-----------------------------------".
               02 COL 68 VALUE "--------------".
               02 LINE 3 COL 25 VALUE "Le sinus d'un angle - Mc Laurin".
           01 AngleScreen.
               02 LINE 5 COL 1 VALUE "Introduisez l'angle en Radian:".
               02 LINE 5 COL 32 pic S9v9(6) USING Angle REQUIRED.
           01 TermeScreen.
               02 LINE 6 COL 1 VALUE "Introduisez le nombre de termes:".
               02 LINE 6 COL 34 pic z9 USING N REQUIRED.
           01 ResultScreen. 
               02 LINE 8 COL 1 VALUE 'sin('.
               02        COL 5 pic 9(9) using angle.
               02        COL 10  Value ')='.
               02        COL 14 pic S9V9(6) using sinus.
          ******************************************************************
           PROCEDURE DIVISION.
    
           Main Section.
    
               perform Welcome.  
               perform Continuer  with test after until UserReply = 2.
               perform QUIT.
    
           Welcome.
               ACCEPT System-Date from DATE YYYYMMDD.
               Display Headerscreen.
       
           Continuer.
               perform Demande-angle.
               perform Meme-Angle with test after until UserReply = 2.
               display MESSAGE box "Un autre angle angle?"
                               title "Sinus Mc Laurin"
                               type is MB-YES-NO icon is MB-default-icon
                               giving UserReply.
    
           Demande-Angle.
               Display AngleScreen.
               ACCEPT Anglescreen.
    
           Meme-Angle.
               perform Demande-Terme until &#40;N is POSITIVE&#41; AND &#40;N<51&#41;.
               perform Init-Data.
               perform Calcul varying i from 2 by 1 until i=N.
               perform Afficher-resultat.
               display MESSAGE box "Même angle?"
                               title "Sinus Mc Laurin"
                               type is MB-YES-NO icon is MB-default-icon
                               giving UserReply.
    
    
           Demande-Terme.
               Display Termescreen.
               ACCEPT Termescreen.
               if &#40;&#40;terme is NEGATIVE&#41; or &#40;terme>50&#41;&#41; then
               display MESSAGE box "Limite du terme entre 0 et 50 inclus" 
                               title "Erreur"
                               type is MB-OK 
                               icon is MB-ERROR-ICON.
    
           Init-Data.
               Move Angle to Sinus.
               Move Angle to Terme.
    
           Calcul.
               SUBTRACT 1 from i giving ii.
               compute terme = terme*&#40;-angle*angle&#41;/&#40;2*ii&#41;*&#40;2*&#40;ii&#41;+&#40;1&#41;&#41;
               end-compute.
               compute sinus=sinus+terme
               end-compute.
    
           Afficher-resultat.
               Display ResultScreen.
    
           QUIT.
               Exit Program.
               Stop Run.
    Compil your life guy!
    The Aures Project

  2. #2
    Membre averti Avatar de Goundy
    Profil pro
    Étudiant
    Inscrit en
    Avril 2005
    Messages
    605
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2005
    Messages : 605
    Points : 386
    Points
    386
    Par défaut
    Up!

    Ca presse un peu , vraiment personne ne connais cobol? je dois rendre mon travail mardi et je n'ai vraiment pas d'idées sur comment corriger

    Merci
    Compil your life guy!
    The Aures Project

  3. #3
    Rédacteur/Modérateur

    Avatar de gorgonite
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Décembre 2005
    Messages
    10 322
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études
    Secteur : Transports

    Informations forums :
    Inscription : Décembre 2005
    Messages : 10 322
    Points : 18 679
    Points
    18 679
    Par défaut
    perso, je ne pensais même pas qu'on l'enseignait encore...
    où étudies-tu ?
    Evitez les MP pour les questions techniques... il y a des forums
    Contributions sur DVP : Mes Tutos | Mon Blog

  4. #4
    Membre averti Avatar de Goundy
    Profil pro
    Étudiant
    Inscrit en
    Avril 2005
    Messages
    605
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2005
    Messages : 605
    Points : 386
    Points
    386
    Par défaut
    En Belgique
    Ca fait bizarre mais franchement d'aprés ce que certaines personnes m'ont dit je commence à me dire que ce langage est quand même assez important dans le monde économique
    Compil your life guy!
    The Aures Project

  5. #5
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Points : 9 716
    Points
    9 716
    Par défaut
    Alors pour information :
    - comme beaucoup, j'ai étudié le Cobol. Moi c'était en IUT (en France). Comme beaucoup, j'ai préféré tout oublier tellement ce langage m'a traumatisé...
    - oui, il reste encore des irréductibles qui programment encore en Cobol

    MAIS:
    - pour les "gros systèmes", on a quand même fait mieux depuis (Oracle)
    - comme tu as pu le remarquer, c'est assez prise de tête comme langage

    Maintenant, y'a-t-il un intérêt pour un jeune diplômé à bien connaître le Cobol? Selon moi, non, parce que:
    - Il y a encore pas mal de développeurs qui ont énormément d'expérience en Cobol, et tu te retrouves en concurrence directe avec eux
    - Si ils sont intelligents, ces développeurs deviennent consultants
    - Le jour où il y aura pénurie de développeurs Cobol (tous morts ou à la retraite), c'est pas pour autant que tu seras payé plus (loin de là!)
    - Les entreprises tendent à évoluer vers d'autres solutions pour les gros systèmes (Oracle). C'est la loi de Darwin: s'adapter ou mourrir !

    Donc oui, si tu as envie de faire de Cobol ta spécialité et de travailler pour des entreprises qui ont 20 ans de retard, le Cobol est important. Personnellement, je préfère encore faire balayeur !

    ***

    Désolé de ne pas pouvoir répondre à ta question (comme je te l'ai dit, Cobol m'a trop traumatisé). Les seuls conseils que je puisse te donner:

    - demande à tes camarades de promo comment ils ont fait ou si ils peuvent t'aider
    - si personne n'a fait mieux que toi, alors ne t'inquiète pas trop: tu seras dans la moyenne de promo
    - demande directement au prof: tu lui dis que pour toi, Cobol c'est vachement important, que c'est l'avenir de l'informatique mais que tu bloques et que t'aurais besoin d'aide. Les profs de Cobol ont pour la plupart passé leur vie à programmer dans ce langage. Si tu montres de l'intérêt pour Cobol, ils seront tout contents d'assurer la "relève". Exploite cette faiblesse (t'es pas obligé de croire tout ce que tu racontes)

    - bosse des matières plus importantes, comme les bases de données par exemple. En plus je suis sûr qu'elles ont un coeff plus élevé...

    ***

    Maintenant, pour détendre l'atmosphère, quelques petites blagues sur COBOL:
    Completely Obscure, Basically Obsolete Language
    Completely Obscure Boring Old Language
    Compiles Only Because Of Luck
    Copy of BASIC, Only Longer
    - La doc est assez ancienne pour être datée au Carbone 14,
    - Tu pourrais me sortir le papyrus de ton dernier programme ?
    - Combien pèse ce programme ? - Trente Kilos. Sans la doc. - Mais non, je parlais pas du listing, mais de l'exécutable.
    - COBOL : Compiles Only Because Of Luck (Ne compile qu'en cas de chance)
    - A computer without COBOL and Fortran is like a piece of chocolate cake without ketchup and mustard. (Un ordinateur sans COBOL ou Fortran est comme un morceau de gâteau au chocolat sans ketchup ni moutarde).
    ... et si vous voulez, j'en ai d'autres !

    ***

    PS: je ne fais qu'exposer mon avis personnel à propos de Cobol. Cet avis n'engage que moi.
    "On en a vu poser les armes avant de se tirer une balle dans le pied..."
    -- pydévelop

    Derniers articles:

    (SQL Server) Introduction à la gestion des droits
    (UML) Souplesse et modularité grâce aux Design Patterns
    (UML) Le Pattern Etat
    Autres articles...

  6. #6
    Membre averti Avatar de Goundy
    Profil pro
    Étudiant
    Inscrit en
    Avril 2005
    Messages
    605
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2005
    Messages : 605
    Points : 386
    Points
    386
    Par défaut
    Wawou, tu me démoralise dans ce que tu dis lol, je hais cobol plus que tout maintenant et j'ai commencé avec le langage C, maintenant quand je vois cobol je te promet ca me traumatise aussi ^_^
    Mais bon, je suis obliger de l'étudier donc voilà

    Si une personne peut corriger mon code tout pourri, je serai trés reconnaissant
    Compil your life guy!
    The Aures Project

  7. #7
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Points : 9 716
    Points
    9 716
    Par défaut
    Faut pas être démoralisé par rapport au C, c'est assez sympa comme langage et surtout, il a encore de TRES beaux jours devant lui.

    C'est vrai que le C est assez bas niveau, et quand tu veux faire des trucs "de base" comme manipuler des chaînes de caractères, ça devient vite du "pissage de code". Cependant C est la base nécessaire pour apprendre à programmer (tu vois ce qu'il se passe au niveau mémoire, etc.). Tu verras, en C++, il y a des trucs sympas (les templates, la STL, la POO...).

    Ce que les entreprises recherchent principalement:
    - C/C++
    - Java, et plus particulièrement J2EE
    - Bases de données (Oracle, SQL Server...)
    - C#, .Net et plein d'autres trucs de chez Crosoft

    Ce que les entreprises ne recherchent pas souvent (pourtant c'est interressant de connaître): Caml, Prolog, Lisp...

    Il arrive de tomber régulièrement sur des annonces concernant Cobol (mais comme je t'ai dit, il y a pas mal de concurrence avec les "anciens" développeurs). Pour te donner un ordre de grandeur, il y a à peu près autant d'annonces concernant la maintenance de projets en VB...


    Encore une fois, désolé de ne pas pouvoir t'aider avec "ton code tout pourri"...
    "On en a vu poser les armes avant de se tirer une balle dans le pied..."
    -- pydévelop

    Derniers articles:

    (SQL Server) Introduction à la gestion des droits
    (UML) Souplesse et modularité grâce aux Design Patterns
    (UML) Le Pattern Etat
    Autres articles...

  8. #8
    Membre averti Avatar de Goundy
    Profil pro
    Étudiant
    Inscrit en
    Avril 2005
    Messages
    605
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2005
    Messages : 605
    Points : 386
    Points
    386
    Par défaut
    Je suis démoralisé au niveau Cobol car je ne veux pas l'étudier et surtout par obligation, mais le langage C j'en fais chez moi et j'adore c'est un trés trés bon langage (également pour le C++).

    De toute facon je vais peut être changer d'école, car ca va pas trop le faire là ou je suis lol

    Tchuss
    Compil your life guy!
    The Aures Project

  9. #9
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2005
    Messages
    1 473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 473
    Points : 3 283
    Points
    3 283
    Par défaut Re: [Cobol] [Débutant] Problème de virgule
    Citation Envoyé par Goundy
    Bonjour,
    Ben voilà j'ai pas vraiment ce résultat et de plus quand je saisis un angle avec virgule et que je fais Enter, il me le réaffiche sans virgule :s
    Qu’est ce qui ne marche pas ?
    L’affichage ?
    Le calcul ?

    Faut peut être regarder du coté de la variable N, en effet elle est déclarée de manière différente en WORKING-STORAGE SECTION et en SCREEN SECTION.
    De plus dans le paragraphe "Demande-Terme" ne serait-ce pas N à la place de TERME ?

    Quand à l'affichage de la virgule, il faut passer par des PICTURE d'édition pour afficher une virgule.
    Dans une déclaration de valeur décimale en COBOL la virgule est toujours virtuelle (d'où le V ...).

    Par ailleurs, ne serait-ce point du COBOL Microfocus ?

  10. #10
    Membre expert
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2005
    Messages
    1 473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Finance

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 473
    Points : 3 283
    Points
    3 283
    Par défaut
    Citation Envoyé par pcaboche
    ...
    - pour les "gros systèmes", on a quand même fait mieux depuis (Oracle)
    ...
    COBOL est un langage de programmation et Oracle est un SGBD. Je ne pense pas qu'on puisse vraiment les comparer.
    De plus, pour les Grands Systèmes IBM (ce sont quasiment les seuls qui restent désormais) c'est DB2 qui est utilisé comme SGBD relationnel.

  11. #11
    Membre averti Avatar de Goundy
    Profil pro
    Étudiant
    Inscrit en
    Avril 2005
    Messages
    605
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2005
    Messages : 605
    Points : 386
    Points
    386
    Par défaut
    Merci pour vos réponses, mais en fait le code est corrigé maintenant enfin :p

    Mais j'ai un autre soucis, comment effacer mon ecran? enfait j'ai 4 ecran:
    1-> Header (titre et date)
    2-> Angle
    3-> Terme
    4-> Resultat
    je souhaite effacer les 3 derniers, comment faire?
    Thanx
    Compil your life guy!
    The Aures Project

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 28/04/2004, 11h25
  2. [Débutant] Problème de déconnexion d'une page JSP
    Par amal9 dans le forum Servlets/JSP
    Réponses: 12
    Dernier message: 22/01/2004, 13h40
  3. [débutant] Problèmes avec CRegKey
    Par Pedro dans le forum MFC
    Réponses: 4
    Dernier message: 10/11/2003, 15h28
  4. Réponses: 11
    Dernier message: 02/09/2003, 14h20
  5. [Kylix] Problème de virgule/DBExpress
    Par jeanphy dans le forum EDI
    Réponses: 5
    Dernier message: 12/02/2003, 16h29

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