0

假设有两个浮点数:a, b。我需要将 a 的值分配b。然后b将通过一个函数转换为文本字符串,我无法更改。转换是通过取浮点数的前 3 位小数而不四舍五入来完成的,其他点被忽略。这会导致准确性的损失。

问题:我怎样才能改变a的值,那么在转换后b会像四舍五入一样吗?

希望我设法解释了问题,但如果没有,请告诉我。

4

1 回答 1

2

我认为这些函数使用“截断”:1.2346 => 1.234,对吗?

您可以添加 0.0005

b = a + 0.0005

例子:

圆形降低

a = 1.2341;
b = a + 0.0005; // 1.2346
string result = yourfunction(b); // 1.234

向上取整

a = 1.2346;
b = a + 0.0005; // 1.2351
string result = yourfunction(b); // 1.235
于 2016-03-28T08:01:26.263 回答