平方根を計算できるOA電卓で冪根を求める方法

現在はスマートフォンを含むコンピュータで手軽に冪根の数値解を得ることができる.

しかし, どうやって計算しているのかということを知っている人はいないだろうし、ほとんどの人は知る必要がないだろうし, 少しアルゴリズムに詳しい人ならニュートン法を使うというだろう.

とはいえ, 立方根を求めることができれば日曜大工くらいには使えるだろうから, 以下に手順を残しておこう.

目的をk(≥0)の立方根を求める.

  1. [CM][k][M+]を入力する. (平方根を残したい数をメモリに記憶するとともに画面入力する)
  2. [×][RM][=][][]を入力する.
  3. 前項の操作を繰り返し、作業の前後で値が変わらなくなったら操作を終了する. 画面に表示された値が k の立方根である

この操作は an+1=(kan)1/4 なる漸化式を順次計算することに相当する. この漸化式で表される数列 {an} の一般項が an=k1/3+c/4n (c は初項に依存する定数) であるので, n が大きくなる, すなわち, この漸化式を繰り返し適用し続けることで k の立方根が得られることがわかる.

以上の作業を応用して, 任意の非負実数kn乗根を求める.

k を非負実数, m, n を正の整数とし, 漸化式 at+1=(kmat)2-n で表される数列 {at} の一般項を求めると, at=km/(2n-1)+2-ntc が得られるので, 漸化式を繰り返し適用することで km/(2n-1) すなわち k の (2n-1) 乗根の m 乗 が得られる.

p 乗根 (p は奇素数)を求めたいのであれば, (2n-1) を素因数分解して因数に p が表れるような最小のn を求め, 先ほどの漸化式において m=(2n-1)/p を適用すればいい.

立方根では m=1, n=2, 5乗根では m=3, n=4, 7乗根では m=1, n=3, 11乗根では m=93, n=10, ... となる.

コメントを残す