标签: rounding

舍入到最多2位小数(仅在必要时)

我想最多舍入2位小数,但只在必要时.

输入:

10
1.7777777
9.1
Run Code Online (Sandbox Code Playgroud)

输出:

10
1.78
9.1
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做__CODE__

javascript decimal decimal-point rounding

2492
推荐指数
53
解决办法
220万
查看次数

将浮点数限制为两个小数点

我希望a四舍五入到13.95.

>>> a
13.949999999999999
>>> round(a, 2)
13.949999999999999
Run Code Online (Sandbox Code Playgroud)

round功能不像我预期的那样工作.

python floating-point precision rounding

1527
推荐指数
28
解决办法
287万
查看次数

如何在Java中将数字舍入到n个小数位

我想要的是一种将double转换为使用half-up方法进行舍入的字符串的方法 - 即如果要舍入的小数为5,则它总是向上舍入到前一个数字.这是在大多数情况下舍入大多数人所期望的标准方法.

我也希望只显示有效数字 - 即不应该有任何尾随零.

我知道这样做的一种方法是使用该String.format方法:

String.format("%.5g%n", 0.912385);
Run Code Online (Sandbox Code Playgroud)

收益:

0.91239
Run Code Online (Sandbox Code Playgroud)

这很好,但它总是显示5位小数的数字,即使它们不重要:

String.format("%.5g%n", 0.912300);
Run Code Online (Sandbox Code Playgroud)

收益:

0.91230
Run Code Online (Sandbox Code Playgroud)

另一种方法是使用DecimalFormatter:

DecimalFormat df = new DecimalFormat("#.#####");
df.format(0.912385);
Run Code Online (Sandbox Code Playgroud)

收益:

0.91238
Run Code Online (Sandbox Code Playgroud)

但是你可以看到这使用了半均匀舍入.也就是说,如果前一个数字是偶数,它将向下舍入.我想要的是这个:

0.912385 -> 0.91239
0.912300 -> 0.9123
Run Code Online (Sandbox Code Playgroud)

在Java中实现这一目标的最佳方法是什么?

java decimal rounding digits

1209
推荐指数
22
解决办法
155万
查看次数

如何将十进制值舍入到2个小数位(对于页面上的输出)

当显示当前小数的值时.ToString(),它精确到15个小数位,并且由于我用它来表示美元和美分,我只希望输出为2位小数.

我是否使用此变体.ToString()

.net c# decimal rounding

610
推荐指数
16
解决办法
98万
查看次数

为什么Math.round(0.49999999999999994)会返回1?

在以下程序中,您可以看到每个值略小于.5向下舍入,除了0.5.

for (int i = 10; i >= 0; i--) {
    long l = Double.doubleToLongBits(i + 0.5);
    double x;
    do {
        x = Double.longBitsToDouble(l);
        System.out.println(x + " rounded is " + Math.round(x));
        l--;
    } while (Math.round(x) > i);
}
Run Code Online (Sandbox Code Playgroud)

版画

10.5 rounded is 11
10.499999999999998 rounded is 10
9.5 rounded is 10
9.499999999999998 rounded is 9
8.5 rounded is 9
8.499999999999998 rounded is 8
7.5 rounded is 8
7.499999999999999 rounded is 7
6.5 rounded is 7 …
Run Code Online (Sandbox Code Playgroud)

java floating-point double rounding

561
推荐指数
5
解决办法
7万
查看次数

在JavaScript中格式化一个正好两位小数的数字

我有这行代码将我的数字四舍五入到小数点后两位.但是我得到这样的数字:10.8,2.4等.这些不是我的两位小数的想法,所以我如何改进以下内容?

Math.round(price*Math.pow(10,2))/Math.pow(10,2);
Run Code Online (Sandbox Code Playgroud)

我想要10.80,2.40等数字.使用jQuery对我很好.

javascript decimal-point rounding

557
推荐指数
8
解决办法
65万
查看次数

显示2位小数的数字

将PHP字符串舍入到2位小数的正确方法是什么?

$number = "520"; // It's a string from a database

$formatted_number = round_to_2dp($number);

echo $formatted_number;
Run Code Online (Sandbox Code Playgroud)

输出应该是520.00;

round_to_2dp()功能定义应该如何?

php formatting numbers rounding number-formatting

521
推荐指数
20
解决办法
103万
查看次数

将一个小数加倍到2位小数

如果值为200.3456,则应格式化为200.34.如果是200,那应该是200.00.

java double rounding

447
推荐指数
11
解决办法
113万
查看次数

你如何在Python中舍入一个数字?

这个问题让我很难过.如何在Python中对数字进行综合?

我尝试了一些(数字),但它将数字向下舍入.例:

round(2.3) = 2.0 and not 3, what I would like
Run Code Online (Sandbox Code Playgroud)

我尝试了int(数字+ .5),但它再次将数字向下舍入!例:

int(2.3 + .5) = 2
Run Code Online (Sandbox Code Playgroud)

然后我尝试了一下(数字+ .5)但它在边缘情况下不起作用.例:

WAIT! THIS WORKED!
Run Code Online (Sandbox Code Playgroud)

请指教.

python floating-point integer rounding python-2.x

439
推荐指数
17
解决办法
70万
查看次数

为什么Math.Round(2.5)返回2而不是3?

在C#中,结果Math.Round(2.5)为2.

应该是3,不是吗?为什么它是2而不是C#?

.net rounding

388
推荐指数
7
解决办法
25万
查看次数