1

我想问如何将数字四舍五入如下:

我正在计算一个数字,例如 246,5。我想把这个数字四舍五入到 250。另一个例子是 581 到 600。

有没有办法在iOS中做到这一点?如何?

我实际上想将数字四舍五入为 50 的倍数)。我想用它来缩放我正在生成的图表的 y 轴。

我有一系列数字,每个数字都用一个方程计算,我只想将每个数字格式化为例如(250(如果 246,5);(600 如果 586,2)

4

1 回答 1

7

我不知道你想要四舍五入的确切内容。在第一个示例中,您四舍五入到下一个十位。在第二个到接下来的数百个。无论如何,一般的方法是:

import <math.h>
....
NSInteger roundToCloser = 1; // 1 to round to closer unity, 10 closer tens, 100 closer hundreds and so on
CGFloat notRounded = 144.5; // Put yours
NSInteger rounded = roundf(notRounded / roundToCloser) * roundToCloser;
// roundToCloser == 1 -> 144
// roundToCloser == 10 -> 140
// rountToCloser == 100 -> 100
// ....
....

更新:如果你想以 50 的步长四舍五入,只需将 roundToCloser 设置为 50:

import <math.h>
....
CGFloat notRounded = 144.5; // Put yours
NSInteger rounded = roundf(notRounded / 50) * 50;
于 2013-08-02T10:08:00.913 回答