CEIL |
Conversion de l'entier supérieur ou égale |
---|---|
Langage C++ | cmath (math.h) |
Syntaxe
float ceil(float a); |
double ceil(double a); |
long double ceil(long double a); |
Paramètres
Nom | Description |
---|---|
a | Ce paramètre permet d'indiquer l'expression contenant le nombre à traiter |
Description
Cette fonction retourne la valeur maximale d'un nombre, soit l'entier le plus proche supérieur ou égal au nombre.
Remarques
- La fonction ceil() renvoie le plus petit entier (représenté comme une valeur à virgule flottante) non inférieur à a. Par exemple, soit une valeur 1.02, la fonction ceil() retournera 2.0. Soit une valeur -1.02, la fonction ceil() renverra -1.
- Définition et utilité : La fonction ceil est utilisée pour arrondir un nombre réel à l'entier supérieur le plus proche, c'est-à-dire qu'elle renvoie la plus petite valeur entière étant supérieure ou égale au paramètre. Elle est définie dans l'entête <cmath> et est souvent utilisée lorsqu'on a besoin d'arrondir un nombre à l'entier supérieur tout en maintenant la précision des valeurs à virgule flottante.
- Comportement avec des nombres positifs : Pour un nombre positif, la fonction ceil renvoie l'entier supérieur le plus proche. Par exemple :
- Comportement avec des nombres négatifs : Pour un nombre négatif, ceil arrondit également vers l'entier supérieur, ce qui, pour un nombre négatif, signifie se rapprocher de zéro. Par exemple :
- Utilisation dans les calculs de dimensionnement : ceil est couramment utilisée dans les applications où il est nécessaire d'effectuer des arrondis pour s'assurer que des quantités sont suffisamment grandes pour contenir une certaine valeur. Par exemple, si vous devez déterminer le nombre de paquets nécessaires pour contenir un certain nombre d'éléments, vous pouvez utiliser ceil pour obtenir le nombre de paquets entier minimum. Par exemple, pour diviser 53 éléments en paquets de 10 :
- Comportement avec les zéros et les entiers : La fonction ceil fonctionne également correctement pour les valeurs proches de zéro. Si le paramètre est 0.0, la fonction renverra 0.0. Si le paramètre est déjà un entier, comme -2.0 ou 5.0, la fonction renverra cet entier sous forme de double (par exemple, -2.0 et 5.0 respectivement).
- Traitement des infinités et des NaN : Si le paramètre de ceil est une valeur infinie (positive ou négative), la fonction renverra cette même valeur infinie. Par exemple :
- Comparaison avec floor : ceil est souvent comparée à la fonction floor, arrondissant un nombre vers l'entier inférieur le plus proche. Tandis que ceil arrondit toujours vers l'entier supérieur, floor arrondit vers l'entier inférieur. Par exemple :
Si le paramètre est déjà un entier, comme ceil(5.0), la fonction renverra simplement cette même valeur (c'est-à-dire 5.0). Cela signifie que ceil n'affecte pas les nombres déjà entiers.
Contrairement à ce que l'on pourrait attendre dans d'autres situations où l'on arrondirait vers l'entier le plus proche, ici ceil arrondit toujours vers le "haut" de la droite numérique, ce qui est vers zéro pour les nombres négatifs.
De même, si le paramètre est un "Not-a-Number" (NaN), la fonction renverra également NaN. Cela permet à la fonction de traiter correctement ces cas extrêmes sans provoquer de comportements erronés.
Ces deux fonctions sont opposées en termes d'arrondi et peuvent être utilisées en fonction du besoin spécifique d'arrondir vers le haut ou vers le bas.
Exemple
Voici un exemple montrant une utilisation plus classique de cette fonction :

- #include <iostream>
- #include <cmath>
-
- int main()
- {
- std::cout << "CEIL(1)=" << ceil(1) << std::endl;
- std::cout << "CEIL(1.1)=" << ceil(1.1) << std::endl;
- std::cout << "CEIL(1.7)=" << ceil(1.7) << std::endl;
- std::cout << "CEIL(-1)=" << ceil(-1) << std::endl;
- std::cout << "CEIL(-1.1)=" << ceil(-1.1) << std::endl;
- std::cout << "CEIL(-1.7)=" << ceil(-1.7) << std::endl;
- std::cout << "CEIL(30.2)=" << ceil(30.2) << std::endl;
- std::cout << "CEIL(-35.4)=" << ceil(-35.4) << std::endl;
- return 0;
- }
on obtiendra le résultat suivant :
CEIL(1)=1CEIL(1.1)=2
CEIL(1.7)=2
CEIL(-1)=-1
CEIL(-1.1)=-1
CEIL(-1.7)=-1
CEIL(30.2)=31
CEIL(-35.4)=-35
Voir également
Langage de programmation - C++ - Référence de procédures et fonctions - exp
Langage de programmation - C++ - Référence de procédures et fonctions - pow
Langage de programmation - C - Référence de procédures et fonctions - ceil
Références
Langage C, Edition Micro-Application, Gehard Willms, 2001, ISBN: 2-7429-2008-0, page 731.
Borland C++ for Windows 4.0, Library Reference, Edition Borland, 1993, Part # BCP1240WW21772, page 46.