• ベストアンサー

ルートの計算

計算機なしでルートをはずす計算のしかたを教えてください。例えば√2=1.41421356などはすぐにわかりますが、√45.345などをはさみうちのやりかたではずすとすごく時間がかかってしまいます。友達が、ひっさんではずすやりかたがあったような・・・!?と言っていましたが。今度の電子回路のテストは計算機が不可なので、手ですばやくルートをはずせないと困ります。教えてください。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • TCM
  • ベストアンサー率44% (81/181)
回答No.1

これは開平ですね。大昔にやったような記憶があります。結局は、上の方の桁から二乗しながら元の平方数を越えないような数を求めるわけですが、参考URLに詳しく手順が書いてあります。

参考URL:
http://www.nikonet.or.jp/spring/sanae/MathTopic/root/root.htm
pocch
質問者

お礼

とてもわかりやすい回答ありがとうございました。とても助かりました。さっそくやってみたいと思います。本当にありがとうございました。

その他の回答 (4)

  • stomachman
  • ベストアンサー率57% (1014/1775)
回答No.5

Stomachmanもtullioさんと一緒。この手です。 x <- (x+y/x)/2 わり算は、yの有効数字と同じぐらいの桁だけ出す。(xの誤差はyの誤差と同程度で良いから。概数が欲しければもっと手抜きする。) y=45.345 0) x  7      <-だいたい 1)y/x 6.4779 <-がんばる 2) 差  0.6    <- (0)と(1)のだいたいの差 3) x  6.7390 <- (0)と(1)の平均 4)y/x 6.7287 <-がんばる 5) 差  0.01   <- (3)と(4)のだいたいの差 6) x  6.7338 <- (3)と(4)の平均 終わり。 なぜなら、次はきっと差が0.000X、

pocch
質問者

お礼

回答ありがとうございました。またわからないことがあったら、よろしくお願いします!

  • tullio
  • ベストアンサー率20% (11/53)
回答No.4

ニュートン法を使ったほうが速い事もあります. √a を求めたいとすると, 1:初期値としてxに√aに近い値をいれる(aそのものでも良い) 2:x←(x*x+a)/(2 x)を好きなだけ計算する 1回の計算で小数点以下3桁くらいはでるでしょう.

pocch
質問者

お礼

回答ありがとうございました。こういうやり方を知らなかったので勉強になりました。またわからないことがあったら教えてください。

  • tukitosan
  • ベストアンサー率43% (84/192)
回答No.3

ここにある、45.345でやっていきます。 まず、小数点の部分から上の桁、下の桁を2桁ずつ区切ります。 するとまず、左の45が出てきます。 このなかで、一番大きい2乗の数値を探します。 6の2乗ですので、6を別のところに書きます。 そして、45から6の2乗の36を引きます。 すると45-36=9がの残ります。 これに、次の二桁を34を9のうしろに付けます。 つまり、934が出来ます。先ほどの6と6を加えたものつまり12を十倍したものにある数字を足したもの(χとする)とχの積で、934より小さい一番大きなχの値を探します。  つまり(120+χ)×χ<934のχの最大値を求めます。すると、7が出てきます。 次に、934-127×7=45に次の2桁を加えて、4550となります。これを先ほどの127に7を加えたものつまり134を10倍したものにある数字を足したものに(これをyとする)yかけたもののうち4550より小さい最大値を探します。  つまり(1340+y)×y<4550すると、3が出てきます。これを繰り返せば、平方根が求められます。 もう少し図的にしめすと   6      √45.345      6       36        -----------------    127       9 34    7       8 89  -----------------  1343        4550      3        4029  -----------------  13463        52100      3        40389  --------------------  134668       1126100       8       1077344  --------------------- と言う具合です。また、少数点の位置ですが、6よりあとは、少数点以下の数値を利用して求めたことになるので6の後に来ます。 よって、45.435の平方根は、6.7338‥‥ と求めることが出来ます。 ちょっと説明がわかりにくくてすみません。図で判断してください。なお、注意点ですが、「少数点の部分から、2桁ずつ区切こと」「数字がなくなったら0(ゼロ)を2つずつ加えること」を間違えなければ、なんとか手計算で平方根は求められます。ちょっと大変ですが。 助言にでもなれば、幸いです。 tukitosan でした。

pocch
質問者

お礼

回答ありがとうございました。わざわざ図まで書いていただいて、とても見やすかったです。本当にありがとうございました。

  • nonkun
  • ベストアンサー率27% (98/357)
回答No.2

え~っと、遠い過去の記憶を頼りに思い出してみました。 例として232×232の答である53824のルートについて解いてみましょう。(バランスが悪くて見難いのはご勘弁を)     ) ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄      5|38|24 とゼロ桁から2桁づつ区切ります。 そして一番前の桁の5以下で一番大きな2乗根は2なので      2  2  ) ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  2   5|38|24      4       ̄ ̄ ̄ ̄      1  とします。ここで左の2を2回書きます。 その2つの2を足します。 そして後ろの2桁を降ろします。      2  2  ) ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  2   5|38|24      4   ̄    ̄ ̄ ̄ ̄  4   1 38 そして 4○×○<138となるように○に当てはまる数字を書きます。      2  3  2  ) ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  2   5|38|24      4   ̄    ̄ ̄ ̄ ̄  43  1 38   3  1 29       ̄ ̄ ̄ ̄ ̄         9 以下43+3をしてその答46を用いて46○×○<924を満たす○を当てはめます。 以下繰り返します。      2  3  2  2  ) ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄  2   5|38|24      4   ̄    ̄ ̄ ̄ ̄  43  1 38   3  1 29   ̄ ̄   ̄ ̄ ̄ ̄ ̄  462    9 24         9 24          ̄ ̄ ̄ ̄ ̄            0 原理については忘れました。ごめんなさい。

pocch
質問者

お礼

とても丁寧に回答していただいてありがとうございました。どんどん使ってすばやく計算できるように頑張ります。ありがとうございました。

関連するQ&A