-1

から変換すると、実際には精度の値が失われますInches to Centimeterそして Again Centimeter to Inches

//インチからセンチメートル

public static String convertInchesToCentimeter(String inches) {
    double in = 0;
    try {
        if (inches != null && inches.trim().length() != 0) { in = Double.parseDouble(inches) / 0.39370;
        }
    } catch (NumberFormatException nfx) {
        System.err.println("Invalid input.");
    }
    return String.valueOf( in );
}

// センチメートルからインチ

public static double convertCentiToInch(double d) {
    double centiToInch = 0;
    if (String.valueOf(d) != null && String.valueOf(d).trim().length() != 0) {

        centiToInch = d * 0.39;
    }
    return centiToInch;
}

私が入力した場合45, its showing 44.58。正確な問題がどこで起こっているのかわかりませんか?

4

2 に答える 2

6

1 つの関数に 0.39370 があり、もう 1 つの関数に 0.39 があります。

正確な数字は1 インチが 2.54 cm です。

于 2013-06-10T15:09:04.273 に答える
0

考えられる問題の 1 つは0.39370、ある関数で使用しているのに、別の関数で使用していることです.392.54センチメートル/インチの正確な値を使用することをお勧めします。

この変更を行っても、浮動小数点数はしばしば不正確になります。

于 2013-06-10T15:10:34.363 に答える