平方根の計算

  1. 目的

    指定した数の平方根を求めます。

  2. 平方根の求め方

    1. 計算方法
      方程式

       F(x) = x2-5 = 0

      の解は 5 の平方根になります。ここでは、中点法によりこの方程式を解きます。詳細はこちらを参照してください。

  3. プログラム

    1. プログラム

      public class root 
      {
        public static void main(String[] args)
        {
              double num,left,right,middle;
              double Fleft,Fmiddle;
      
              num=5;//5の平方根を求めます
      
              left=0.0;right=num;
      
              while(right-left>0.00001){//左右の解の範囲が0.00001以下になるまで繰り返す
                  middle=(left+right)/2.0f;        /*中点を求める*/
                  System.out.println("left:"+left+" right:"+right);
                  Fmiddle=middle*middle-num;
                  Fleft=left*left-num;
      
                  /*解の存在範囲を変更する*/
                  if ( Fmiddle*Fleft< 0.0)  right=middle; //左半分に解がある        
                  else left=middle;//右半分に解がある
              } ; 
      
        }
      
      }

    2. 実行結果

      E:\java\sample\root>java root
      left:0.0 right:5.0
      left:0.0 right:2.5
      left:1.25 right:2.5
      left:1.875 right:2.5
      left:2.1875 right:2.5
      left:2.1875 right:2.34375
      left:2.1875 right:2.265625
      left:2.2265625 right:2.265625
      left:2.2265625 right:2.24609375
      left:2.2265625 right:2.236328125
      left:2.2314453125 right:2.236328125
      left:2.23388671875 right:2.236328125
      left:2.235107421875 right:2.236328125
      left:2.2357177734375 right:2.236328125
      left:2.23602294921875 right:2.236328125
      left:2.23602294921875 right:2.236175537109375
      left:2.23602294921875 right:2.2360992431640625
      left:2.2360610961914062 right:2.2360992431640625
      left:2.2360610961914062 right:2.2360801696777344