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 :

Déterminer le net à payer [Turbo Pascal]


Sujet :

Turbo Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Novembre 2008
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 55
    Par défaut Déterminer le net à payer
    salut tout le monde
    voila un autre TP
    Je réfléchie d'abord

    ***********
    Proposer un programme qui demande de saisir le nom, la durée (jours), la catégorie (m/f)
    Pour un client dans un hôtel, et afficher le net a payé, sachant que :
    Le prix unitaire journalier varie comme ceci


    - 500 dhs si le nombre de jours<5
    - 350 dhs si 5<= nembre de jours<15
    - 250 dhs si nombre du jours >=15
    Une réduction est accordé au client selon le tableau suivant :

    Durée homme femme
    <15 jours 3% 2%
    >=15 jours 5% 4%
    Déterminer le net à payé

  2. #2
    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
    C'est à croire que tu aimes calculer les nets
    PLus sérieusement, on te l'a déjà dit:Inutile de nous montrer le TP et de dire que tu réflechis d'abord, réfléchis d'abord et montres nous ce que tu as fait pour qu'on te débloques et une fois que tu fais deja un exercice comme ça , d'autres exercices similaires ne devraient pas te poser de problèmes puisque le principe ne change pas en tant que tel.
    Quand tu poses une discussion il est supposé poser un problème; c'est pas ton cas.

    Cordialement

  3. #3
    Membre averti
    Inscrit en
    Novembre 2008
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 55
    Par défaut
    voila mon travail
    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
    uses crt;
    var    n:string;
           nj,du:integer;
           ca,f,m:char;
           ru,pu,nap:real;
    begin
    clrscr;
    write('donner le nom de r‚sidant:');readln(n);
    write('donner le nombre de jour: ');readln(nj);
    write('donner la cat‚gorie:      ');readln(ca);
     
    if  nj<5 then
    pu:=500*nj
    else if nj<=15 then
    pu:=350*nj
    else pu:=250*nj;
    if ca=f and nj<15 then
    ru:=pu*0.02
    else if ca=h and nj<15 then
    ru:=pu*0.03
    if ca=f and nj>15 then
    ru:=pu*0.04
    else if ca=h and nj>15 then
    ru:=pu*0.05;
    nap:=pu-ru
    write('le prix unitaire est:'pu:4:2);
    readln;
     
     
     
    end.
    Je ne suis pas de genre qu’il demande d’aide son faire le moindre effort
    Je sais bien ça
    Je fatigue mon cerveau d’abord si je n’ai pas un issu à mon problème donc
    Dés c’est Là vient le soutien

  4. #4
    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
    Ce que je voulais dire c'est de nous présenter en meme temps que l'exercice ta solution
    Mais tu ne dis toujours pas le problème que tu rencontres ou tu veux juste qu'on te dise si c'est bon ou pas, ou qu'on te donne des conseils sur l'algo utilisé?
    Il serait bien aussi d'indenter ton coder pour le rendre plus lisible
    Juste un petit point
    if ca=f and nj<15 then
    f et h sont considérés comme variable qui n'existent pas il faut dire que c'est caractères en mettant entre quote ' et mettre une parenthèse autour de la condition du if
    Cordialement

  5. #5
    Membre averti
    Inscrit en
    Novembre 2008
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 55
    Par défaut
    Merci krachik de votre répense
    Citation Envoyé par krachik
    Mais tu ne dis toujours pas le problème que tu rencontres ou tu veux juste qu'on te dise si c'est bon ou pas, ou qu'on te donne des conseils sur l'algo utilisé?
    voilà c'est ca

    Citation Envoyé par krachik
    Il serait bien aussi d'indenter ton coder pour le rendre plus lisible
    Juste un petit point
    un coup de main fais l'affaire

  6. #6
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 967
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 967
    Par défaut
    Fei,

    Et c'est toujours le même exercice, à peu de choses près. Tu ne devrais donc plus avoir le moindre problème pour l'écrire.

  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
    Bon
    Quand on y jette un coup d'oeil on voit que l'algo est a revoir
    Pour l'indentation
    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
     
    uses crt;
    var   n:string;
           nj,du:integer;
           ca,f,m:char;
           ru,pu,nap:real;
    begin
       clrscr;
       write('donner le nom de r‚sidant:');
       readln(n);
       write('donner le nombre de jour: ');
       readln(nj);
       write('donner la cat‚gorie:      ');
       readln(ca);
     
       if  nj<5 then
            pu:=500*nj
       else if nj<=15 then
            pu:=350*nj
       else pu:=250*nj;
       if ca=f and nj<15 then
            ru:=pu*0.02
       else if ca=h and nj<15 then
            ru:=pu*0.03
       if ca=f and nj>15 then
            ru:=pu*0.04
       else if ca=h and nj>15 then
            ru:=pu*0.05;
       nap:=pu-ru
     
       write('le prix unitaire est:'pu:4:2);
       readln;
     
    end.
    En gros la partie if +else if+ else n'a pas trop de sens .
    Par exemple faire ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
       if  nj<5 then
            pu:=500*nj
       else if nj<=15 then
            pu:=350*nj
    N'a pas de sens puisque si nj est inférieur ou egal à 15 les deux if sont concerné il faudra dire aussi qu'il soit supérieur a 5.
    Quand tu lis l'énoncé:
    - 500 dhs si le nombre de jours<5
    - 350 dhs si 5<= nembre de jours<15
    - 250 dhs si nombre du jours >=15
    ça te fait penser tout de suite à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
       Si nbjour<5 Alors
          ....  
       FinSi
       Sinon Si nbjour=>5 ET nbjour<=15
          ....
       FinSi
       Sinon (Si nbjour>=15)
          ....
       FinSinon
    Après quand tu vois
    Une réduction est accordé au client selon le tableau suivant :
    Durée homme femme
    <15 jours 3% 2%
    >=15 jours 5% 4%
    Tu vois qu'il y a des conditions a rajouter
    Je prend juste le dernier cas pour t'aider >=15 jours 5% 4%
    ça veut dire qu'on est dans le cas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
        Sinon (Si nbjour>=15)
          ....
       FinSinon
    Alors il faudra rajouter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
       Sinon (Si nbjour>=15)
           ......(pu=nbjour*250;
           Si categorie=homme Alors
             ....(ru=pu*0.05;)  
           FinSi
           Sinon(Si categorie=femme) Alors
               ....(ru=pu*0.04)
           FinSinon
       FinSinon
    Apres quand tu auras fini de jouer avec ça tu veras que ça peut être interessant de jouer avec les enregistrements

    Cordialement

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

Discussions similaires

  1. [Turbo Pascal] Calculer le net à payer par rapport au nombre de copies
    Par agan2012 dans le forum Turbo Pascal
    Réponses: 6
    Dernier message: 21/11/2008, 19h54
  2. [VB.NET][2.0]Positionner mon combobox sur un item déterminé
    Par Golzinne dans le forum Windows Forms
    Réponses: 5
    Dernier message: 27/03/2006, 14h30
  3. Réponses: 1
    Dernier message: 09/03/2006, 17h55
  4. Fonction : calculer le dividende net à payer
    Par Bernard123 dans le forum Access
    Réponses: 5
    Dernier message: 27/10/2005, 14h45
  5. Réponses: 3
    Dernier message: 20/04/2005, 12h30

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