comment arrondir une val déc. à la valeur entière sup? [TP] - Delphi/Pascal - Programmation
Marsh Posté le 03-11-2002 à 13:54:28
Quel langage ?
Marsh Posté le 03-11-2002 à 13:56:13
turbo pascal 
 
merci de t'interesser à moi !! 
  
 
Marsh Posté le 03-11-2002 à 13:56:41
si X - Int(X) <> 0 result = Int(X) + 1 sinon result = int(X) 
 
edit avec langage : 
if frac(X) <> 0 then   | 
Marsh Posté le 03-11-2002 à 13:59:08
 
 
Marsh Posté le 03-11-2002 à 14:01:53
edit noté 
 
j'achève le prog, je teste ton truc et je viens te dire si c ok 
 
merci d'avance 
 
Marsh Posté le 03-11-2002 à 14:09:37
 
  
 
Marsh Posté le 03-11-2002 à 14:12:31
if frac (nb_roul) <> 0 then 
        begin 
        nb_roul := nb_roul + 1; 
        end; 
 
ça marche pas, j'ai tjs un résultat non entier ! 
  
  
 
j'ai essayé frac(nb_roul) et frac (nb_roul) ça fait pareil 
  
 
une idée?? 
 
Marsh Posté le 03-11-2002 à 14:13:45
tu me dira ya un soucis, j'ai déclaré les variables en tant que real 
 
si j'ai nb_roul = 1.4 ça fera 2.4 et non 2  
 
Marsh Posté le 03-11-2002 à 14:16:28
| Citation : var frac: real;   | 
 
mais il vaudrait mieux que tu stocks le résultat ds un Integer là tu auras un résultat du type 2.0 
 
 ![]()
Marsh Posté le 03-11-2002 à 14:26:37
si je met ton truc j'ai une erreur 40 
  
 
et si je met integer je suis obligé de tout passer en integer et puis meme ca merde il me dis type mismatch 
  
 
cata 
  
 
merci d'essayer de maider
Marsh Posté le 03-11-2002 à 14:33:43
(je suis sous Delphi...) 
 
C quoi l'erreur 40 ?
Marsh Posté le 03-11-2002 à 14:57:30
c bon j'ai réussi : 
 
if int(nb_roul) <> nb_roul then 
        begin 
        nb_roul := int(nb_roul) + 1; 
        end; 
 
 
encore merci bcp pr ton aide c super sympa now g fini !!! 
 
poire 
  ![[:tkilla] [:tkilla]](https://forum-images.hardware.fr/images/perso/tkilla.gif)
Marsh Posté le 03-11-2002 à 15:36:49
2 rien 
 
 
Marsh Posté le 03-11-2002 à 16:02:42
l'algo le plus simple pour faire ca c'est de faire : 
int(tonDécimal + 0.5) 
avec int() qui est la fonction de troncature de la partie décimale. 
je connais pas le pascal, donc je vous laisse adapter ca au langage 
 
 
edit : je suis vraiment trop con, ce qu'il veut c'est à la valeur supérieur .... oups ...
Marsh Posté le 03-11-2002 à 16:07:37
| antp a écrit a écrit  : y a pas la fonction Ceil en Turbo Pascal  | 
 
j'C po 
j'connaissais po
Marsh Posté le 03-11-2002 à 16:25:14
y a ça en Delphi mais je sais pas s'ils l'ont ajoutée ou si elle existait déjà avant...
Marsh Posté le 03-11-2002 à 13:42:05
dans le cas où celle ci est bien décimale ...
 
exemple il faut acheter 2.4 rouleaux ...
j'aimerais que ca me mette 3
par contre si j'ai 2 rouleaux à acheter, faut le laisser comme ça
comment faire ?
avec mod ? (je c pas m'en servir)
merci d'avance !
---------------
L'impôt appauvrit l'ignorant et enrichit le connaisseur.