温馨提示×

在C++中如何自定义类似的ceil()函数

c++
小樊
82
2024-09-10 18:35:28
栏目: 编程语言

在C++中,你可以自定义一个类似于ceil()函数的功能,即向上取整

#include<iostream>
#include <cmath>

// 自定义的向上取整函数
double custom_ceil(double value) {
    if (value == int(value)) {
        return value;
    } else if (value > 0) {
        return std::floor(value) + 1;
    } else {
        return std::floor(value);
    }
}

int main() {
    double input = 5.6;
    std::cout << "原始值: "<< input<< std::endl;
    std::cout << "向上取整后的值: "<< custom_ceil(input)<< std::endl;

    return 0;
}

这个示例中的custom_ceil()函数接受一个double类型的参数value。首先,我们检查value是否为整数,如果是,则直接返回该值。如果value大于0,我们使用std::floor()函数向下取整,然后加1以实现向上取整。如果value小于0,我们直接使用std::floor()函数向下取整。

main()函数中,我们将一个浮点数赋值给变量input,并调用custom_ceil()函数对其进行向上取整。最后,我们输出原始值和向上取整后的值。

0