本文介绍了将正数四舍五入到5的下一个最接近的倍数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要将数字四舍五入(输入必须保证为整数,并且是正数)到5的下一个倍数。
I need to round of a number (the input is guaranteed to be an integer & is positive) to the next multiple of 5.
我尝试了以下操作:
int round = ((grades[j] + 2)/5) * 5;但是,这会将数字四舍五入到最接近的5的倍数。
However, this rounds off the number to the nearest multiple of 5.
例如:67四舍五入为65,而不是70。
Eg: 67 is rounded off to 65, not 70.
推荐答案要舍入一般形式,应为:
To round up the general form should be:
((n + denominator -1) / denominator )* denominator所以在您的情况下:
int round = ((grades[j] + 4)/5) * 5;我们从分母中减去1的原因是要处理舍入值的精确倍数,例如:
The reason we deduct 1 from the denominator is to handle exact multiples of the rounding value for instance:
((70 + 4) / 5) * 5收益率 70
更多推荐
将正数四舍五入到5的下一个最接近的倍数
发布评论