26.1.3.6 10分の1法

次に,増加値をだんだん小さくする方法にトライしてみましょう. この方法では

class Root2b {
    public static void main(String argv[ ]) {
	double e=0.000000001,d=0.1,x;
	x=1.0;
	while(d >= e){
	    while(x*x < 2.0)
		x=x+d;
	    x=x-d;
	    d = d / 10;
	}
	System.out.println("Square root of 2 = " + x);
    }
}

fileRoot2b.java

注意点をいくつか示します.