Mik*_*yte 5 java math rounding
我想在没有round() -  Method的情况下手动舍入.所以我可以告诉我的程序这是我的号码,在这一点上我希望你回合.让我举几个例子:
输入数字:144 
输入舍入:2 
输出舍入数:140
输入数:123456 
输入舍入:3 
输出舍入数:123500
并且作为一个小插件可能在逗号后面圆:输入数字:123.456 
输入舍入:-1 
输出舍入数字:123.460
我不知道如何开始编程...有谁知道如何开始这个问题?
谢谢你帮助我:)
我想学习更好的编程,所以我不想使用圆形并制作我自己的编程,所以我可以理解它更好的方式:)
一个简单的方法是:
让我给你看一个例子:
您想要将数字四舍五入1234.567到小数点后两位(所需的结果是1234.57)。
x = 1234.567;
p = 2;
x = x * pow(10, p);  // x = 123456.7
x = floor(x + 0.5);  // x = floor(123456.7 + 0.5) = floor(123457.2) = 123457
x = x / pow(10,p);   // x = 1234.57
return x;
Run Code Online (Sandbox Code Playgroud)
当然,您可以将所有这些步骤压缩为一个。我一步步向您展示它是如何工作的。在紧凑的 java 形式中,它会是这样的:
public double roundItTheHardWay(double x, int p) {
    return ((double) Math.floor(x * pow(10,p) + 0.5)) / pow(10,p);
}
Run Code Online (Sandbox Code Playgroud)
至于整数位置,您可以轻松检查这是否也有效(使用p < 0)。
希望这可以帮助
|   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           2429 次  |  
        
|   最近记录:  |