1. 程式人生 > >實現任意精讀的除法(JAVA)

實現任意精讀的除法(JAVA)

有時候需要高精度的除法,但是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; }