博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
金额计算
阅读量:4670 次
发布时间:2019-06-09

本文共 1211 字,大约阅读时间需要 4 分钟。

在工作中一般在计算商品价格的时候都是精确到分后面的数字就不在需要了

一, 全入到分

一般计算平台利润都是这样算 因为直接进一发 进的那一步一般都是由采购或者供出 让自己赚  

 比如1.215455 直接 进一法  结果就是 1.22  

///         /// 全入到分        ///         /// 数字        /// 
结果
public static decimal AllInPenny(decimal @decimal) { return Math.Ceiling(@decimal * 100) / 100; }

二, 全舍到分

一般计算供应商货款的都是这样算 因为舍掉的部分就有自己赚了

比如1.215455 直接把分后面的小数舍掉 结果就是1.21

///         /// 全舍到分        ///         /// 数字        /// 
结果
public static decimal AllAbandonPenny(decimal @decimal) { return Math.Floor(@decimal * 100) / 100; }

三 ,四舍五入(银行家算法)

一般在计算第三方手续费是用这个

财付通就是用这个算法

///         /// 四舍五入到分(银行家算法)        ///         /// 数字        /// 
结果
public static decimal Rounding(decimal @decimal) { return Math.Round(@decimal, 2); }

四,四舍五入(中国式)

一般在计算第三方手续费是用这个

支付宝就是用这个算法

///         /// 四舍五入到分(中国式四舍五入)        ///         /// 数字        /// 
结果
public static decimal RoundingCn(decimal @decimal) { return Math.Round(@decimal, 2, MidpointRounding.AwayFromZero); }

我对这个银行家算法还是不太清楚 如果想要了解的更清楚请自行百度

转载于:https://www.cnblogs.com/liuxiaoji/p/4922699.html

你可能感兴趣的文章
设计模式之“单例模式”
查看>>
iOS App上架流程(2016详细版)
查看>>
SpringMVC+Thymeleaf +HTML的简单框架
查看>>
mxnet系列 安装
查看>>
Flask - 基础
查看>>
导航栏主题
查看>>
堆排序
查看>>
Expm 1_2 实现快速排序的算法,并尝试采用不同的方法实现线性的划分过程.
查看>>
Spoon新建repository的时候
查看>>
Oracle XE http端口8080的修改
查看>>
C#中,将16进制转换为有符号的10进制的方法(支持带0x标志,支持任意字符串)
查看>>
HTML5开发 Web SQL Database 本地数据库
查看>>
数据库镜像搭建
查看>>
python实现句子反转
查看>>
Django------多表操作
查看>>
java入门之内部类
查看>>
c之枚举默认值
查看>>
设计模式之 --- 工厂模式(下)
查看>>
Linux常用命令大全
查看>>
巴洛克式和哥特式的区别
查看>>