既知のSQRTは(2)、1.414にほぼ等しい10の小数点以下の桁数の後SQRT(2)を探して、何の数学ライブラリを必要としません

質問:知られているSQRT(2)が1.414にほぼ等しい、SQRTを求めて、何の数学ライブラリを必要としない(2)10の小数点以下の桁数の後に。

人々の話題:アリババのトピックの専門家:月/アリクラウドCDN上級技術専門家。

検査ポイント:柔軟なアプリケーション能力ベースのアルゴリズム(二分法の学生がデータ構造を研究承知しているが、必ずしもこの方向性を考慮していない。学生は数値計算を学んだ場合、また、ニュートン反復法を考えると説明することができるはずです)終了条件デザイン

回答:

1.  既知SQRT(2)約1.414の、そのようなバイナリサーチなどのセクション(1.4、1.5)、で行うことができます。

A)=> 1.5高 

b)は、低=> 1.4 

C)半ば=)>(高+低/2=1.45 

Cに再循環D)1.45 * 1.45> 2高=> 1.45 :?低い=> 1.45 e)参照)

 

2.  終了条件

<二つの長手方向= 0.0000000001のa)の絶対値との差、終了することができ

constのダブルEPSINON = 0.0000000001。

ダブルSQRT2(){ 
    ダブルロー= 1.4、ハイ= 1.5。
    =(低+高)/ 2ダブルミッド。
    
    一方、(高-低> EPSINON){ 
        IF(中間*ミッド> 2){ 
            高=ミッド。
        } 
        他{ 
            低い=ミッド。
        } 
        半ば=(ローハイ+)/ 2。
    } 
    
    半ばを返します。
}

 

おすすめ

転載: www.cnblogs.com/williamjie/p/11131093.html