二分法、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 |