gpt4 book ai didi

java - 四舍五入到最接近的一百

转载 作者:IT老高 更新时间:2023-10-28 20:55:34 26 4
gpt4 key购买 nike

我在我的 java 程序中遇到了一个需要四舍五入到最接近的一百的部分,并认为可能有某种方法可以做到这一点,但我想没有。所以我在网上搜索示例或任何答案,但我还没有找到任何答案,因为所有示例似乎都是最接近的一百个。我只是想这样做并四舍五入。也许有一些我忽略的简单解决方案。我已经尝试了 Math.ceil 和其他功能,但尚未找到答案。如果有人能帮助我解决这个问题,我将不胜感激。

如果我的数字是 203,我希望结果四舍五入为 300。你明白了。

  1. 801->900
  2. 99->100
  3. 14->100
  4. 452->500

最佳答案

利用整数除法,它会截断商的小数部分。为了使它看起来像四舍五入,请先添加 99。

int rounded = ((num + 99) / 100 ) * 100;

例子:

801: ((801 + 99) / 100) * 100 → 900 / 100 * 100 → 9 * 100 = 900
99 : ((99 + 99) / 100) * 100 → 198 / 100 * 100 → 1 * 100 = 100
14 : ((14 + 99) / 100) * 100 → 113 / 100 * 100 → 1 * 100 = 100
452: ((452 + 99) / 100) * 100 → 551 / 100 * 100 → 5 * 100 = 500
203: ((203 + 99) / 100) * 100 → 302 / 100 * 100 → 3 * 100 = 300
200: ((200 + 99) / 100) * 100 → 299 / 100 * 100 → 2 * 100 = 200

相关 Java Language Specification quote, Section 15.17.2 :

Integer division rounds toward 0. That is, the quotient produced for operands n and d that are integers after binary numeric promotion (§5.6.2) is an integer value q whose magnitude is as large as possible while satisfying |d · q| ≤ |n|.

关于java - 四舍五入到最接近的一百,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18407634/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com