也许以前有人问过这个问题,但是我没有找到解决问题的办法。因此,我有一个像general count
这样的数字,我必须得到除法的结果。但是,如果结果包含余数,则必须增加结果。我试图创建自己的函数:
private fun mod(count: Int): Double {
val mainCount: Double
val remainder = count % 50
mainCount = if (remainder > 0) {
count.toDouble() / 50+1
} else {
count.toDouble() / 50
}
return mainCount
}
但没有帮助,然后我使用了此功能:
val df = DecimalFormat("0")
df.roundingMode = RoundingMode.HALF_EVEN
Log.i("m", df.format(count/50).toString())
但是在日志中,我得到的主要号码没有剩余。例如,我有这样的东西:
main count - 112
result of division - 2.24
what I want to get - 3
也许我做错了吗?
答案 0 :(得分:2)
据我所知,您只是试图将结果四舍五入。
最简单的方法是将(denominator - 1)
添加到分子。因此(在Java中),整个方法可以简化为:
return (count + 49) / 50;
答案 1 :(得分:1)
如果余数大于0且小于50,只需在主场上加+1。 如if(提醒> 0 &&提醒<50)mainCount ++;
答案 2 :(得分:1)
我已经更新了您的代码段。希望对您有所帮助。
val mainCount: Double
val remainder = count % 50
mainCount = count.toDouble() / 50
val finalMainCount = if (remainder > 0) {
mainCount.toInt() + 1
} else {
mainCount.toInt()
}
println(finalMainCount)
return finalMainCount