向上/向下取整和四舍五入编程实现
来源:互联网 发布:ubuntu接口配置ip地址 编辑:程序博客网 时间:2024/05/28 15:08
在看Guava Cache的实现源码时,其中有个向上取整操作,它的源码如下:
int segmentCapacity = initialCapacity / segmentCount;if (segmentCapacity * segmentCount < initialCapacity) { ++segmentCapacity;}
关于向上取整、向下取整、四舍五入等操作,有不同的实现,效率上讲,也是基本可以忽略不计,毕竟用的比较少,这里对向上/向下取整和四舍五入的编程实现进行一下整理。
对于运算>>>>>>
向下取整:
a/b
向上取整:
(a+b-1)/b
四舍五入:
int(float(a)/b+0.5)
对于定值>>>>>>
可以使用编程语言内置的floor和ceil函数。floor(x)返回的是小于或等于x的最大整数。ceil(x)返回的是大于x的最小整数。
下面是一种简单实现,不带错误检查等
int floor(double x){ return (int) x - (x< 0);}int ceil(double x){ return (int) x + (x> 0);}int round(double x){ return floor(x+0.5);}
0 0
- 向上/向下取整和四舍五入编程实现
- 向上取整;向下取整;四舍五入
- 向上/向下取整及四舍五入(PHP和javascript)
- perl:取整、四舍五入、向上取整、向下取整
- opencv 取整数,四舍五入,向上取整,向下取整
- 向上取整⌈⌉ 和 向下取整⌊⌋ 和四舍五入
- java、js 对于四舍五入、向上取整、向下取整
- C# 四舍五入,向上取整,向下取整
- Sql Server 向上取整,向下取整,四舍五入
- c# 三种取整方法 向上取整 向下取整 四舍五入
- c++四舍五入函数,向上取整,向下取整函数
- PHP数学运算: 向上/向下取整及四舍五入
- python中四舍五入及向上向下取整处理
- ios的向上,向下以及四舍五入的取整方式
- python 向上、向下、四舍五入取整方法 round圆整
- 向上取整和向下取整
- 向下取整和向上取整
- 向上取整和向下取整
- C++中的虚函数、纯虚函数
- 使用CSS改变表格边框样式
- 线程池原理及创建(C++实现)
- Java 垃圾回收
- 缓存框架OSCache部分源码分析
- 向上/向下取整和四舍五入编程实现
- 理解Java中hashCode的作用
- hibernate学习 hibernate-tutorials(四)——envers
- 关于我
- 解决Gradle版本不匹配
- tinder项目感言
- Maven Package Compilation Error
- HTML5地理定位实例
- 10017---SpringMVC--RESTful SpringMVC CRUD