我对我正在开发的程序的结果有疑问。
例如,如果我有一个数字 8672.59,我想把它分成 2,结果应该是 4336.295。问题是如何将其转换为 2 位小数点并四舍五入结果,以便在添加 2 个数字时仍然可以得到正确的数量..
例子。
8672.59 / 2 = 4336.295
如果四舍五入为 2 位小数点,则结果为4336.30
我如何将其转换为 2 位小数点而不四舍五入,这样如果将其乘以 2,结果将与8672.59而不是8672.60相同
谢谢你!
我对我正在开发的程序的结果有疑问。
例如,如果我有一个数字 8672.59,我想把它分成 2,结果应该是 4336.295。问题是如何将其转换为 2 位小数点并四舍五入结果,以便在添加 2 个数字时仍然可以得到正确的数量..
例子。
8672.59 / 2 = 4336.295
如果四舍五入为 2 位小数点,则结果为4336.30
我如何将其转换为 2 位小数点而不四舍五入,这样如果将其乘以 2,结果将与8672.59而不是8672.60相同
谢谢你!
如果您希望此操作是可逆的,您需要存储足够的信息来取消计算。因此,如果您仅将 8672.59 / 2 存储到小数点后两位,则无法通过乘以 2 得到 8672.59。您将得到 8672.58 或 8672.60,具体取决于您存储的是 4336.29 还是 4336.30。
现在,您可以将数字存储到小数点后三位(或任何您需要的精度)并仅显示其中两位。只需将存储的数字乘以 2,即可返回原始数字。
从整体中减去四舍五入的结果。
Dim Total as Double = 8672.59
Dim OneHalf = Math.Round(Total/2, 2)
Dim SecondHalf = Total - OneHalf
在您的示例中,Total = 8672.59,所以 OneHalf = 4336.30(四舍五入)
第二半 = 8672.59 - 4336.30 = 4336.29。