溫馨提示×

C++ ceil()函數處理邊界值的情況

c++
小樊
125
2024-09-10 18:32:18
欄目: 編程語言

ceil() 函數是 C++ 標準庫 <cmath> 中的一個函數,用于計算大于或等于給定浮點數的最小整數。當輸入為負數時,ceil() 函數會向零方向取整。對于邊界值,ceil() 函數的行為如下:

  1. 正無窮大:如果輸入為正無窮大,ceil() 函數將返回正無窮大。
#include<iostream>
#include <cmath>

int main() {
    double input = std::numeric_limits<double>::infinity();
    double result = std::ceil(input);
    std::cout << "ceil(positive infinity) = "<< result<< std::endl;
    return 0;
}
  1. 負無窮大:如果輸入為負無窮大,ceil() 函數將返回負無窮大。
#include<iostream>
#include <cmath>

int main() {
    double input = -std::numeric_limits<double>::infinity();
    double result = std::ceil(input);
    std::cout << "ceil(negative infinity) = "<< result<< std::endl;
    return 0;
}
  1. NaN(非數字):如果輸入為 NaN,ceil() 函數的行為是未定義的。在實際應用中,它可能返回 NaN 或觸發異常。
#include<iostream>
#include <cmath>

int main() {
    double input = std::numeric_limits<double>::quiet_NaN();
    double result = std::ceil(input);
    std::cout << "ceil(NaN) = "<< result<< std::endl;
    return 0;
}

請注意,這些示例使用了 std::numeric_limits 來表示特殊的浮點值(如無窮大和 NaN)。要使用這些示例,需要包` 頭文件。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女