在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()
函数对其进行向上取整。最后,我们输出原始值和向上取整后的值。