二分法、Newton 法はプログラミング入門に取り上げられることを多い話題です。 ここでは Newton 法のプログラムのみ示します。
四則演算のみ使える状況で、
与えられた正数
の平方根を
を求めるには、
Newton 法が便利です。(割り算を使わずに
を求めるには、
の解として求める、という話もありますが)、
ここでは素朴に
の解として求めるプログラムを作ってみました。
変数 A を入力するところを書き足し、 F(), dfdx() を書き直すくらいで動くようになります。 確認用に SQR() を使った値の表示をします。
kadai7root-newton.bas |
./kadai7prog/kadai7root-newton.BAS.utf |
![]() |
./kadai7prog/kadai7root-newton-2.TXT.utf |
修正量を毎回表示してみても面白いかも知れません。
の逆関数として
の計算をする方も同様です。
こちらは1000桁演算モードで EXP() が使えないため、
16桁程度の精度の計算しか出来ません。
kadai7log-newton.bas |
./kadai7prog/kadai7log-newton.BAS.utf |
![]() |
./kadai7prog/kadai7log-newton.TXT.utf |