Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1464 connectés 

  FORUM HardWare.fr
  Programmation

  PASCAL: Changer l'affichage des variables(Chiffres apres/avant la ",")

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

PASCAL: Changer l'affichage des variables(Chiffres apres/avant la ",")

n°90493
Wanoo
Posté le 18-01-2002 à 00:14:53  profilanswer
 

Pk j'arrive pas a regler mes variables (dans le tableau) pour que lors de l'affichage elle prennent au maximum 10 caracteres de longeurs et que 2 caracteres apres la virgule ?
 

Citation :

PROGRAM salledesport;
uses crt;
VAR
datte : char;
clb : char;
vil : integer;
nbnorm : integer;
nbsup : integer;
nbdouch : integer;
mnorm : real;
msup : integer;
mdouch : integer;
txred : real;
total : real;
reduc : real;
tva : real;
pct : real;
autre : integer;
BEGIN
REPEAT
clrscr;
writeln ('Bienvenue sur le programme SalleDeSport de Yann';);
BEGIN
clrscr;
writeln ('Entrez la date de facturation (JJ/MM/AA): ';);
readln (datte);
writeln ('Entrez le nom du club: ';);
readln (clb);
REPEAT
BEGIN
writeln ('Est ce un club de la ville (Oui: 1 Non: 2) ? ';);
readln (vil);
END
UNTIL (vil=1) OR (vil=2);
writeln ('Entrez le nombre d''heures normales: ';);
readln (nbnorm);
writeln ('Entrez le nombre d''heures suppl?mentaires: ';);
readln (nbsup);
writeln ('Entrez le nombre de s?ance ou les douches ont ?taient utilis?es';);
readln (nbdouch);
CASE vil OF
   1:BEGIN
       mdouch := 0;
       REPEAT
         BEGIN
           write ('Entrez le pourcentage de jeunes licenc?s: ';);
           readln (pct);
           IF pct > 50 THEN
               BEGIN
                 mnorm := 2;
                 msup := 2;
                 txred := 0.2;
               END
              ELSE
               BEGIN
                 mnorm := 3;
                 msup := 3;
                 txred := 0.1;
               END;
               END
       UNTIL (pct > 0) AND (pct <= 100);
     END;
   2:BEGIN
       mnorm := 3.5;
       msup := 6;
       txred :=0;
       mdouch := 1;
     END;
     ELSE
     write ('Erreur de saisie';);
     END;
writeln ('ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿';);
writeln ('³ Facture au ',datte :8,'                                             ³';);
writeln ('³ Club : ',clb,'                                  ³';);
writeln ('ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ´';);
writeln ('³:: Libell?               ³ Quantit?   ³ Prix unitaire ³ Montant  ³';);
writeln ('ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´';);
writeln ('³ Heures normales         ³',nbnorm,'³',mnorm,'³',nbnorm*mnorm,'³';);
writeln ('³ Heures suppl?mentaires  ³',nbsup,'³',msup,'³',nbsup*msup,'³';);
writeln ('³ S?ances avec douches    ³',nbdouch,'³',mdouch,'³',nbdouch*mdouch,'³';);
writeln ('ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´';);
total := (nbnorm*mnorm)+(nbsup*msup)+(nbdouch*mdouch);
reduc := total*txred;
tva := (total-reduc)*0.206;
writeln ('                                       ³ TOTAL         ³',total,'³';);
writeln ('                                       ³ R?duction     ³',reduc,'³';);
writeln ('                                       ³ TVA    20,6 % ³',tva,'³';);
writeln ('                                       ³ Net ? payer   ³',total-reduc+tva,'³';);
writeln ('                                       ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÙ';);
writeln ('Autre club? (Oui : 1 Non : 0) ?';);
readln (autre)
END
UNTIL (autre = 0);
END.

mood
Publicité
Posté le 18-01-2002 à 00:14:53  profilanswer
 

n°90500
_john_doe_
Posté le 18-01-2002 à 01:25:18  profilanswer
 

ajoute :X:Y à la fin du nombre
(X est le nombre de chiffre au total, et Y le nombre de chiffres après la virgule)
 
exemple :
1.23456789:3:2
 
affichera
1.23
 
(je crois)

n°90501
Wanoo
Posté le 18-01-2002 à 01:30:42  profilanswer
 

oui, et pour les variables "char" je fait comment car dans mon tableau j'ai juste le premier caractere qui s'affiche ?

n°90505
_john_doe_
Posté le 18-01-2002 à 01:47:59  profilanswer
 

????
 
une variable char ça ne peut contenir qu'un seul caractère...
Si tu veux en stocker plus, faut utiliser le type STRING (chaîne de caractères)...
 
(c'est ça la question ?)

n°90507
Wanoo
Posté le 18-01-2002 à 01:50:13  profilanswer
 

_john_doe_ a écrit a écrit :

????
 
une variable char ça ne peut contenir qu'un seul caractère...
Si tu veux en stocker plus, faut utiliser le type STRING (chaîne de caractères)...
 
(c'est ça la question ?)  




 
Oulala !!!!!!!!!!!
 
Oui CT ca le probleme, je cherche mon ereur depuit 1h et C un truc tout bete !
 
Merci, j'orai pu chercher encore lontemp  :jap:

n°90509
Wanoo
Posté le 18-01-2002 à 02:17:34  profilanswer
 

PROGRAM salledesport;
uses crt;
VAR
 datte : string;
 clb : string;
 vil : integer;
 nbnorm : integer;
 nbsup : integer;
 nbdouch : integer;
 mnorm : real;
 msup : integer;
 mdouch : integer;
 txred : real;
 total : real;
 reduc : real;
 tva : real;
 pct : real;
 autre : integer;
BEGIN
 clrscr;
 writeln ('Bienvenue sur le programme SalleDeSport de Yann';);
 readkey;
 REPEAT
   BEGIN
     clrscr;
     writeln ('Entrez la date de facturation (JJ/MM/AA): ';);
     readln (datte);
     writeln ('Entrez le nom du club: ';);
     readln (clb);
     REPEAT
       BEGIN
         writeln ('Est ce un club de la ville (Oui: 1 Non: 2) ? ';);
         readln (vil);
       END
     UNTIL (vil=1) OR (vil=2);
     writeln ('Entrez le nombre d''heures normales: ';);
     readln (nbnorm);
     writeln ('Entrez le nombre d''heures suppl?mentaires: ';);
     readln (nbsup);
     writeln ('Entrez le nombre de s?ance ou les douches ont ?taient utilis?es';);
     readln (nbdouch);
     CASE vil OF
        1:BEGIN
            mdouch := 0;
            REPEAT
              BEGIN
                write ('Entrez le pourcentage de jeunes licenc?s: ';);
                readln (pct);
                IF pct > 50 THEN
                  BEGIN
                    mnorm := 2;
                    msup := 2;
                    txred := 0.2;
                  END
                 ELSE
                  BEGIN
                    mnorm := 3;
                    msup := 3;
                    txred := 0.1;
                  END;
              END
            UNTIL (pct > 0) AND (pct <= 100);
          END;
        2:BEGIN
            mnorm := 3.5;
            msup := 6;
            txred :=0;
            mdouch := 1;
          END;
        ELSE
          write ('Erreur de saisie';);
     END;
     writeln ('ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿';);
     writeln ('³ Facture au ',datte,'                                             ³';);
     writeln ('³ Club : ',clb,'                                  ³';);
     writeln ('ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄ´';);
     writeln ('³:: Libell?               ³ Quantit?   ³ Prix unitaire ³ Montant  ³';);
     writeln ('ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´';);
     writeln ('³ Heures normales         ³',nbnorm :12,'³',mnorm :15:2,'³',nbnorm*mnorm :10:2,'³';);
     writeln ('³ Heures suppl?mentaires  ³',nbsup :12,'³',msup :15,'³',nbsup*msup :10,'³';);
     writeln ('³ S?ances avec douches    ³',nbdouch :12,'³',mdouch :15,'³',nbdouch*mdouch :10,'³';);
     writeln ('ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄ´';);
     total := (nbnorm*mnorm)+(nbsup*msup)+(nbdouch*mdouch);
     reduc := total*txred;
     tva := (total-reduc)*0.206;
     writeln ('                                       ³ TOTAL         ³',total :10:2,'³';);
     writeln ('                                       ³ R?duction     ³',reduc :10:2,'³';);
     writeln ('                                       ³ TVA    20,6 % ³',tva :10:2,'³';);
     writeln ('                                       ³ Net ? payer   ³',total-reduc+tva :10:2,'³';);
     writeln ('                                       ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÙ';);
     writeln ('Autre club ? (Oui : 1 Non : 0) ';);
     readln (autre)
   END
 UNTIL (autre=0);
END.

n°90511
Wanoo
Posté le 18-01-2002 à 02:18:14  profilanswer
 

Je fais comment pour avoir une variable date?

n°90555
antp
Super Administrateur
Champion des excuses bidons
Posté le 18-01-2002 à 09:36:03  profilanswer
 

objet TDate ou TDateTime sous Delphi (qui en fait n'est pas un objet mais juste un nombre - un double - dont la partie entière représente la date et la partie décimale le temps.
si c'est en Turbo Pascal je sais pas.


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  PASCAL: Changer l'affichage des variables(Chiffres apres/avant la ",")

 

Sujets relatifs
[PHP] Problèmes transmission variables et stockage de fichiersTurbo Pascal 7 tourne sur les PC récents ?
[C++] Comment changer la résolution du bureau sous Win98?Urgent prog PASCAL
[MFC Dialog Based - VS6] Qd je met à jour affichage -> moche ...[Delphi] Changer la langue que un TTextToSpeech parle
[pascal] Comment faire une gestion d'erreur ?ce que php 4.1.0 va changer
[Need Help] Turbo Pascal...Pb de transfert de variables entre deux Form (VB)
Plus de sujets relatifs à : PASCAL: Changer l'affichage des variables(Chiffres apres/avant la ",")


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR