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

Turbo Pascal Discussion :

[TP] Détection de nom de mois


Sujet :

Turbo Pascal

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2007
    Messages : 49
    Par défaut [TP] Détection de nom de mois
    salut
    j'ai fait l'application de cet enoncé sur turbo pascal mais quand j'ai fait compiler il y a une faute que j'ai pas su comment corriger
    l'exercice:
    Ecrire un algo et sa traduction en pascal qui permet d'afficher si le mois entrée par l'utilisateur est un mois d'été. exp: aout--message(le mois saisie est un mois d'été)

    en pascal ( mon travail)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    program summer;
    uses wincrt;
    var
    juin,juillet,aout:mois;
    begin
    write('le nom du mois');
    read(mois);
    if(m:=juin,juillet,aout) then write('le mois saisie est un mois d"été');
    end.
    l'erreur m'a apparu au var 'identificateur inconnu'

    Pouvez vous m'aider???

  2. #2
    Membre chevronné Avatar de Haywire
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2006
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

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

    Informations forums :
    Inscription : Mars 2006
    Messages : 462
    Par défaut
    Bonjour, il n'y a pas qu'une seule erreur dans ton programme !

    Je prends mon courage à deux mains et je prend ton programme dans l'ordre.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    program summer;
    uses wincrt;
    var
    juin,juillet,aout:mois; // le type "mois" n'existe pas...
    begin
    write('le nom du mois');
    read(mois); // la tu veux lire qqch et le mettre dans une variable qui s'appele mois et qui n'existe pas
    if(m:=juin,juillet,aout) then write('le mois saisie est un mois d"été'); // "m:=" est une affectation est non une comparaison, mais même sans ça tu ne peux pas comparer une variable à 3 autres de cette manière.
    end.
    Je te conseil aussi d'utiliser readln plutôt que read.
    Bref tu devrais revoir un peu ton programme parce que là tu es mal parti.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2007
    Messages : 49
    Par défaut
    Alors c'est quoi le type??
    ça m'a rendu folle l'application en pascal!! je ne maitrise pas bien

  4. #4
    Membre Expert
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Par défaut
    En effet.

    D'après ce que je vois dans ton programme, tu n'as pas bien compris :
    - la notion de variable
    - la déclaration de variable
    - l'affectation
    - les tests (comparaisons)

    Je te conseille fortement de regarder un cours de Pascal avant de continuer, ainsi que de regarder des codes "bons" écrits dans des tutoriels, sur les forums ou dans l'aide de ton compilateur.

    Enfin voici quand même des exemples de code sur les 3 points ci-dessus :
    Déclaration, affectation et utilisation de variable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    program test
    uses WinCrt;
     
    var {C'est ici que l'on déclare les variables}
      i : integer; { on déclare la variable "i" de type "integer" }
    begin
      i := 1; { on affecte la variable "i" }
      write(i); { on utilise la variable "i" }
    end.
    Tests
    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
    program test
    uses WinCrt;
     
    var
      i : integer;
      s : String;
    begin
      i := 1;
      s := 'abc';
     
      if (i = 1) and (s = 'abc') then { on test une condition a chaque fois, chaque condition pouvant elle-même faire partie d'une condition plus globale (and, or, ...) }
      begin
        writeln(i);
        write(s);
      end;
    end.

  5. #5
    Membre Expert
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Par défaut
    bonjour
    si u demande
    Citation Envoyé par The future scientist
    Alors c'est quoi le type?
    t'es sûr que c'est toi qui ecris le code ?ou bien t'a fait que le traduire?
    a premiere vu je dirai que pour l etype il peut s'agir d'une enumeration mais apres ça peut etre tout
    comme c'est deja dit par Loceka faut allé maitriser deux ou trois avant de te lancer.
    @+

  6. #6
    Membre chevronné Avatar de Haywire
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2006
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

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

    Informations forums :
    Inscription : Mars 2006
    Messages : 462
    Par défaut
    Si on veut simplifier à l'extrême y a besoin que d'une variable string pour lire le mois et une triple comparaison avec des OR.
    J'avoue que je ne vois pas bien l'intérêt de l'exercice car l'énoncé est bien compliqué par rapport à la résolution qui peut être ultra simpliste.

  7. #7
    Membre Expert
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Par défaut
    Citation Envoyé par Mushroom7
    J'avoue que je ne vois pas bien l'intérêt de l'exercice car l'énoncé est bien compliqué par rapport à la résolution qui peut être ultra simpliste.
    ça depend de comment on veut compliquer l'ennoncé mais dans ce cas il peut vouloir dire comme tu l'a dit
    lire mois
    si mois="juin" ou.......
    ecrire.........
    pour ça il faut queThe future scientist nous dise dans quel cadre se situe l'enooncé et quel sont les connaissances qu'il a deja acquis en TP
    il y a plusieurs moyens de le faire........
    @+

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2007
    Messages : 49
    Par défaut
    Citation Envoyé par krachik
    ça depend de comment on veut compliquer l'ennoncé mais dans ce cas il peut vouloir dire comme tu l'a dit
    lire mois
    si mois="juin" ou.......
    ecrire.........
    pour ça il faut queThe future scientist nous dise dans quel cadre se situe l'enooncé et quel sont les connaissances qu'il a deja acquis en TP
    il y a plusieurs moyens de le faire........
    @+
    Salut
    tout d'abord merci d'avoir répondu
    Ensuite, je suis une fille ( car j'ai remarqué que tu as dis il )
    c'est une application dans le cadre des structures conditionnel à forme réduite
    mes connaissances sont: les types entier, reel, boleen, chaine de caractère et d'autres types comme tableau. les fonctions sont plusieurs
    mais l'application en pascal je suis débutante puisque c'est aujourd'hui que j'ai eu le programme.

    Q: je dois utiliser la fonction or???

    Et merci

  9. #9
    Membre Expert
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Par défaut
    désolé d'avoir dit il
    dans ce cas fait comme Mushroom7 a dit pour etre simple
    Lire mois
    Si mois="juin" ou mois="juillet" ou mois="aout"
    Ecrire "mois d'été"
    FinSi
    ceci est juste basé sur ton code de debut
    t'a juste a changér corrigé ton code et à savoir ce qu'on fait quand on pose une condition
    @+

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2007
    Messages : 49
    Par défaut
    Merci

  11. #11
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2007
    Messages : 49
    Par défaut
    salut
    ou est la faute???

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    code
    program summer;
    uses wincrt;
    var
    mois,juin,juillet,aout:boolean;
    begin
    write('donner le nom du mois');
    if(mois:='juin' or mois:='juillet' or mois:='aout') then write('le mois saisie est un mois d"été');
    end.

  12. #12
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 466
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 466
    Par défaut
    Citation Envoyé par The future scientist
    salut
    ou est la faute???

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    code
    program summer;
    uses wincrt;
    var
    mois,juin,juillet,aout:boolean;
    begin
    write('donner le nom du mois');
    if(mois:='juin' or mois:='juillet' or mois:='aout') then write('le mois saisie est un mois d"été');
    end.
    Y'en a partout

    Les variables juin juillet et aout sont inutiles, si tu utilises ton traitement if. Ensuite comment tu récupères ce que rentre l'utilisateur ? Il faut utiliser readln. Tes tests dans ta condition sont faux, il faut utiliser l'opérateur = pour a comparaison et non := (affectation).

    Regarde un cours ! http://cyberzoide.developpez.com/info/turbo/

  13. #13
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2007
    Messages : 49
    Par défaut
    je n'ai rien compris..
    bien, je vais lire plus de cours et après je verrai comment faire.
    c'est pas du tout facile ce pascal!!!
    Merci

  14. #14
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 969
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 969
    Par défaut
    Hal,
    Citation Envoyé par The future scientist
    c'est pas du tout facile ce pascal!!!
    C'est un langage à apprendre.

    Comme toute nouvelle connaissance, il faut faire l'effort d'apprendre les bases, ici, la syntaxe et l'orthographe du langage.

    Pour cela, il faut lire les cours et essayer de les comprendre, ainsi que les exemples. Copier du code et vérifier qu'il fonctionne ne suffit pas pour cela (je dis ça parce que c'est ce que font la plupart des débutants).

  15. #15
    Membre émérite
    Avatar de CapJack
    Homme Profil pro
    Prof, développeur amateur vaguement éclairé...
    Inscrit en
    Mars 2004
    Messages
    624
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Prof, développeur amateur vaguement éclairé...
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2004
    Messages : 624
    Par défaut
    En outre (mais je me trompe peut-être), j'ai l'impression que les fautes faites sont majoritairement des fautes typiques de quelqu'un qui a d'abord programmé en Basic. Signalons clairement au moins deux différences entre Basic et Pascal :

    * en Basic, les variables sont auto-déclarées, c'est-à-dire qu'il n'y a pas besoin de préciser qu'on va utiliser a pour écrie "a = 3" (même chose en php d'ailleurs, beurk). Dans tout vrai langage impératif comme le Pascal ou le C, il faut déclarer les variables ainsi que le type de ce qu'on va mettre dedans, avant de les utiliser. C'est une sécurité pour éviter les erreurs.

    * en Basic, on utilise le même signe pour une affectation de variable (a=3) et pour une comparaison (if a=3 ...). En Pascal, il y a deux symboles différents, ":=" pour l'affectation et "=" pour la comparaison. En C aussi (= et ==). Tu te plains du Pascal, mais si un jour tu te mets au C, tu vas souffrir encore plus car le C accepte les deux dans une comparaison. Sauf que le résultat n'est pas le même...

    Enfin, j'ai l'impression que la notion de variable n'est vraiment pas maîtrisée. Travaille sur cette notion.

  16. #16
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2007
    Messages : 49
    Par défaut
    Merci.
    Le problème a été resolu .... bientot un aute
    Bonne journée

  17. #17
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    113
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Tunisie

    Informations forums :
    Inscription : Avril 2007
    Messages : 113
    Par défaut
    ton travaille n'a pas de sens et tout le monde houni yhchou fih

    je vait te donner une méthode facile
    @+ et bonne chance au devoir

  18. #18
    Rédacteur/Modérateur
    Avatar de M.Dlb
    Inscrit en
    Avril 2002
    Messages
    2 466
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Avril 2002
    Messages : 2 466
    Par défaut
    Merci de parler français, c'est un forum francophone.

  19. #19
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2007
    Messages : 49
    Par défaut
    Citation Envoyé par gadalla
    ton travaille n'a pas de sens et tout le monde houni yhchou fih

    je vait te donner une méthode facile
    @+ et bonne chance au devoir
    Merci de me donner
    Mais sache,ami, qu'il n'y a pas de honte quand on veux améliorer nos connaissances.
    Sans fautes, on n'arriver pas à apprendre!

  20. #20
    Membre Expert
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Par défaut
    Citation Envoyé par gadalla
    ton travaille n'a pas de sens et tout le monde........
    alors tu proposes quoi de sensé toi?
    Citation Envoyé par gadalla
    je vait te donner une méthode facile
    alors????????
    @+

Discussions similaires

  1. Récupérer le nom du mois à partir d'une date.
    Par zooffy dans le forum ASP.NET
    Réponses: 10
    Dernier message: 04/03/2008, 14h48
  2. [BO 5.1]Affichage du nom du mois
    Par LP-mpascolo dans le forum Designer
    Réponses: 7
    Dernier message: 22/10/2007, 10h05
  3. Réponses: 6
    Dernier message: 06/06/2007, 17h57
  4. [ACCESS] Nom du mois à partir d'une date
    Par leloup84 dans le forum Access
    Réponses: 12
    Dernier message: 05/04/2007, 14h41
  5. Réponses: 12
    Dernier message: 31/03/2007, 08h38

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