相关疑难解决方法(0)

C++:向上舍入到最接近的数字的倍数

好的 - 我几乎不好意思在这里张贴这个(如果有人投票结束我会删除),因为这似乎是一个基本问题.

这是在C++中舍入到数字的倍数的正确方法吗?

我知道还有其他与此相关的问题,但我特别感兴趣的是知道在C++中执行此操作的最佳方法是什么:

int roundUp(int numToRound, int multiple)
{
 if(multiple == 0)
 {
  return numToRound;
 }

 int roundDown = ( (int) (numToRound) / multiple) * multiple;
 int roundUp = roundDown + multiple; 
 int roundCalc = roundUp;
 return (roundCalc);
}
Run Code Online (Sandbox Code Playgroud)

更新:对不起我可能没有明确意图.这里有些例子:

roundUp(7, 100)
//return 100

roundUp(117, 100)
//return 200

roundUp(477, 100)
//return 500

roundUp(1077, 100)
//return 1100

roundUp(52, 20)
//return 60

roundUp(74, 30)
//return 90
Run Code Online (Sandbox Code Playgroud)

编辑:感谢所有的回复.这是我的目的:

int roundUp(int numToRound, int multiple)
{
 if(multiple == 0)
 {
  return numToRound;
 } …
Run Code Online (Sandbox Code Playgroud)

c++ algorithm rounding

155
推荐指数
9
解决办法
11万
查看次数

标签 统计

algorithm ×1

c++ ×1

rounding ×1