La fonction Ceil répond parfaitement à cette question :
Unité : Math Catégorie : routines arithmétiques function Ceil(const X: Extended):Integer;
Description Appelez Ceil pour obtenir le plus petit entier supérieur ou égal à X. La valeur absolue de X doit être inférieure à MaxInt. Par exemple : Ceil(-2.8) = -2 Ceil(2.8) = 3 Ceil(-1.0) = -1 Ceil(2.01) = 3
|
May Delphi be with you-------------------------------
Réponse au message :
-------------------------------
> merci bcp pour la réponse!! toutefois le problème nest pas résolu : en réalité, le but est de facturer des minutes d'appel. ainsi, chaque minute entamée sera facturée. le round ne convient donc pas puisqu'il arrondit vers le bas avant le ,5 . c'est aussi pourquoi le 'trunc+1' ne convient pas: si la durée d'appel est égale à un nombre entier de minutes, on facturera une minute supplémentaire (si x=2, trunc+1 donnera x=3).
>
>
>
> -------------------------------
> Réponse au message :
> -------------------------------
>
> > Il y a la fonction Round :
> > function Round(X: Extended): Int64;
> >
> >
Copie de l'aide :> >
> > La fonction Round arrondit une valeur de type réel en valeur de type entier.
> >
> > X est une expression de type réel. Round renvoie une valeur Int64 qui correspond à la valeur de X arrondie au nombre entier le plus proche. Si X se trouve exactement à mi-chemin entre deux nombres entiers, le résultat est toujours le nombre pair.
> >
> > Si la valeur arrondie n'est pas comprise dans l'étendue Int64, une erreur d'exécution est générée ; vous pouvez la gérer à l'aide de l'exception EInvalidOp.
> >
> > -------------------------------
> > Réponse au message :
> > -------------------------------
> >
> > > bête petite question : comment arrondir, en pascal, un nombre entamé vers l'unité supérieure?
> > > TRUNC + 1 n'est pas valable pour les nombres entiers...
> > > ex: 2,1 -> 3
> > > merci!
> >
>