银行家舍入法
2016-06-07 10:29
405 查看
舍去位的数值小于5时,直接舍去。
舍去位的数值大于5时,进位后舍去。
当舍去位的数值等于5时,若5后面还有其他非0数值,则进位后舍去,若5后面是0时,则根据5前一位数的奇偶性来判断,奇数进位,偶数舍去。
对于上面的规则我们举例说明
11.556 = 11.56 ------六入
11.554 = 11.55 -----四舍
11.5551 = 11.56 -----五后有数进位
11.545 = 11.54 -----五后无数,若前位为偶数应舍去
11.555 = 11.56 -----五后无数,若前位为奇数应进位
public static void main(String[] args) {
BigDecimal d = new BigDecimal(11.5551);
BigDecimal i = d.multiply(r).setScale(2,RoundingMode.HALF_EVEN); //使用银行家算法
System.out.println(i);
}
Output:
11.56
五舍六入:
public int mathrount(int sum,int size){
//sum总数
//size分成几份
//return 平均数
int i = 0;
if((sum % size)>size/2)
i = 1;
return (sum/size)+i;
}
相关文章推荐
- db2连接失败次数超限,重置
- linux命令后台进行和查看、关闭后台任务
- Java Md5
- Bitmap createBitmap参数(一)
- 面向对象——多态
- Oracle中一些常用函数
- android屏幕类
- BLE的设备各种状态
- Junit 文件URL报错解决办法
- js拼字符串传action时 不要用#号拼接,用逗号
- 示波器入门之带宽(BW)
- 关于航模无刷电机与电调的疑问
- websphere启动节点和控制台步骤
- 2016-06-07【普元EOS Studio】
- windows搭建***并且绑定ip
- (1)初始 odoo framework
- git不支持中文的乱码解决方案
- Oracle中单引号
- javascript基础语法——表达式
- 李洪强 - C语言8-Scanf函数