НАЗВА

ceil, ceilf, ceill - функція округлення: найменше ціле значення, не менше за аргумент

ОГЛЯД

 **#include <math.h>** 

 **double ceil(double **_x_**);** 
 **float ceilf(float **_x_**);** 
 **long double ceill(long double **_x_**);** 

ОПИС

Ці функції округляють x до найближчого старшого цілого.

ПОВЕРНЕНІ ЗНАЧЕННЯ

Повертає округлене вверх число. Якщо x є цілим або нескінченість, повертається саме x.

КОДИ ПОМИЛОК

Жодних інших помилок, крім EDOM та ERANDE, не може бути. Якщо x являється NaN (не числом), тоді повертається NaN і errno може бути встановленим до EDOM.

ПРИКЛАД

   #include <stdio.h>
   #include <math.h>

   int main()
   {
       float f = 3.122;
        int x;

       x = ceilf(f);

        printf("Rounded up %g: %d\n", f, x);
        return 0;
   }

Вивід програми: Rounded up 3.122: 4

ПРИМІТКИ

SUSv2 і POSIX 1003.1-2001 містять текст з інформацією про помилку переповнення (яка може встановити errno до ERANGE або викликати виняткову помилку). У дійсності, результати не можуть викликати помилку переповнення на жодній з сучасних машин, отже ці згадування про помилки просто нісенітниця. (Якщо точніше, переповнення може статися тільки за умови, що максимальне значення експоненти менше за кількість бітів мантиси. Згідно зі стандартом IEEE-754, максимальне значення експоненти 32-бітних і 64-бітних чисел з плаваючою точкою дорівнює 128 (і відповідно 1024), а число бітів мантиси дорівнює 24 (і відповідно 53).)

ВІДПОВІДНІСТЬ СТАНДАРТАМ

Функція ceil() узгоджується з SVID 3, POSIX, BSD 4.3, ISO 9899. Решта функцій привнесені C99.

ДИВІТЬСЯ ТАКОЖ

floor(3), ?lrint(3), ?nearbyint(3), ?rint(3), ?round(3), ?trunc(3)