實現任意精讀的除法(JAVA)
阿新 • • 發佈:2019-02-09
有時候需要高精度的除法,但是double除法能力有限。如果你願意使用BigDecimal,也可以實現任意精讀的除法。但是有時候不能引入BigDecimal類,比如做演算法題的時候。下面這個就是為這個而寫的一個小程式。
public String highPrecisionDivide(int x, int y, int n){
if(y == 0)
return null;
if(x == 0)
return "0";
String result = "";
result += x / y + "." ;
x = x - x / y * y;
while(result.length() <= n){
int tmp = x * 10 / y;
result += tmp;
x = x * 10 - x * 10 / y * y;
}
return result;
}