• ベストアンサー

平方根の解き方

平方根の解き方について、過去ログを参考にさせて頂き、だいたい 理解できたのですが、簡単な確認と質問をさせて下さい。 解き方には、筆算で求めるのとニュートン法とがあり、 筆算での求めかたについて(求めたい値は204) 下記のような感じであっていると思うのですが、 下記確認事項です。 間違っていたら、ご指摘お願い致します。 1)ルート内の求めたい数は、1の位から2桁ずつに区切る   204なら、2と04。もし4桁で2040なら、   20と40。2桁で20ならそのまま。一桁で2ならそのまま。 2)ルート内の求めたい数が小数点のついた数の場合   小数点のついているところから、2桁に区切る   20.4なら、20と4。2.04なら、2と04 3)計算をしていき、求めたい数204の次の2桁を   おろしてくる場合は、ルートの上に小数点をつける。   この場合なら、3段目の800の時に、ルートの上の数   14の後ろに小数点をつける      1  4.28     √ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 1    2|04| 1    1 __  _______ 24   1 04  4     96  ̄ ̄   ̄ ̄ ̄ ̄ ̄ ̄ ̄ 282     800   2     564  ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄ ̄ ̄ 2848    23600    8    22784  ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄ ̄ 繰り返していく。 4)その他、これだけは気をつけておいた方がいいという ことがあれば、教えて下さい。 5)ニュートン法というのが、過去ログを見ても理解 できませんでした。 こちらも覚えておいた方がいいのでしょうか?

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

  • ベストアンサー
回答No.1

y0-k0さん、こんにちは。 開平法についてですね。 いい参考ページがなかったのですが、一つ紹介しておきます。 http://www004.upp.so-net.ne.jp/s_honma/root.htm      1  4.28     √ ̄ ̄ ̄ ̄ ̄ ̄ ̄ 1    2|04| 1    1       ←この1は、1×1=1のです。 __  _______ 24   1 04    ←この1は、2-1=1の1  4     96    2*×*が104に一番近く小さいものを探す  ̄ ̄   ̄ ̄ ̄ ̄ ̄ ̄ ̄ 282     800   2     564  ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄ ̄ ̄ 2848    23600    8    22784  ̄ ̄ ̄ ̄  ̄ ̄ ̄ ̄ ̄ ̄  ↑ これ、よくキレイに書けましたね! やり方は、ばっちりです。 あと気をつければいいのは、分数なら有利化してからするといいですよ。 ニュートン法についての説明です。 微分が関係していますが、定数の√を取る計算なら、開平法でいいんじゃないでしょうか。 ご参考になればうれしいです。 http://hp.vector.co.jp/authors/VA013845/algorithm/newton.html

参考URL:
http://www004.upp.so-net.ne.jp/s_honma/root.htm
y0-k0
質問者

お礼

ご回答ありがとうございます。 分数なら有利化ですか。 有利化ってなんでしたっけ?(泣) ニュートン法は微分が関係してくるのですね。 微分や積分もすっかり忘れてしまいました・・・。 開平法だけでいいかな。。。

その他の回答 (5)

  • kony0
  • ベストアンサー率36% (175/474)
回答No.6

ニュートン法を用いて、√a(の近似値)を求める方法は、昔下記URLで書きました。 X(0)に適当な正の整数をセットし、 X(n+1)=(1/2){X(n) + a/X(n)} の漸化式を計算すると、lim(n→∞)x(n)=√aがいえます。 ついでに、大域的収束性および2次収束性も書きました・・・ 計算機の有効桁数の範囲で、精緻な計算が、少量の計算で求められるものと思っています。(√の計算とニュートン法がたまたま相性がよいだけですが・・・いや本当は本質的に相性がよいのですが^^;)

参考URL:
http://oshiete1.goo.ne.jp/kotaeru.php3?q=391499
回答No.5

y0-k0今日は。#3のものですが、Pellの方程式を補足します。(連分数展開は多少長くなりますので、ご希望があれば書き込ませてもらいます) Pellの方程式とは、x^2-Ay^2=1の形の方程式の事です。 ここでAは平方因子を含まない自然数(言いかえると素数または相異なる素数の積)です。 この方程式の重要な点は、常に解が存在する事、また、(x,y)=(a,b)を一つの解とするとき、(x、y)=(2*a^2-1,2*x*y)---(#)もまた解になる事です。(これは計算で簡単に確かめられます。なお、*は掛け算を表わします) 2の平方根はx^2-2y^2=1を使って(近似値を)求めます。 x^2-2y^2=1の一つの解は(3,2)である事が分かります。 従って、(#)から、(17,12)もまた解になります。 同様に繰り返して、(577,408)(665857,470832)が得られれますが、このとき、665857/470832=1.41421356・・・となり、小数第8位まで正しい値が求まっています。 >開平法のようにきちんとした回答ではないってことでしょうか? すみません、ちょっと意味が分かりません。きちんとした回答とは? 開平法も単なる近似計算である事は分かってますよね。

y0-k0
質問者

お礼

再度、ご回答ありがとうございます。 Pell方程式は、私には難しすぎるかも・・・。 >開平法も単なる近似計算である事は分かってますよね。 すみません。それすら知りませんでした(泣)

noname#5537
noname#5537
回答No.4

graphaffine さん, ご指摘ありがとうございます。寝ぼけてました^^; y0-k0 さん, x^2 は 「x の2乗」の意味で使いました。 が,#2 で書いた式は間違いですので graphaffine さんの書き込みを参考にしてください。 「手計算でやるべきものではないです。」 についても,少々言い過ぎました。 手計算でやって出来ないわけではありません。

y0-k0
質問者

お礼

再度、ご回答ありがとうございます。 実際に「204」をニュートン法で計算して頂けない でしょうか? いまいちピンとこなくて・・・。 すみません。宜しくお願い致します。

回答No.3

眠いので簡単に書きます。 質問の趣旨から外れるかもしれませんが、 筆算でやるとしたら開平法は効率が悪いです。 連分数展開やPellの方程式を使った方法の方が早いです。 後者の問題は、Pell方程式の根を求める必要がある事で、 そのためにニュートン法を併用することもあるでしょう。 念のため言っておきますと、ニュートン法は平方根を求める方法と言うよりも、方程式の根の近似計算を行う方法です。 #2に突っ込ませてもらいます。 >x の平方根を求めるということは, >x^2 - 1 = 0 という方程式を解くことに相当します。 単なる書き間違いだと思いますが、以下の間違いですね。 ・A の平方根を求めるということは, x^2 - A = 0 という方程式を解くことに相当します。 通常非線型とは微分方程式の場合に使う言葉だと思います。それから、簡単な場合は手計算でやっても問題ないと思います。質問者も何十桁も出そうとしているのではないでしょうし。

y0-k0
質問者

お礼

ご回答ありがとうございます。 開平法は効率が悪いのですか~。 連分数展開・Pell方程式・・・難しそう(汗) 初めて聞きました。 ニュートン法は方程式の根の近似計算を行う方法なのですか。 近似値ってことは、開平法のようにきちんとした回答ではないってことでしょうか? あと、#2の方ののお礼にも書きましたが、 x^2 - A= 0 の、「x^2」の「^」この記号?の意味が分からないんです・・・。

noname#5537
noname#5537
回答No.2

x の平方根を求めるということは, x^2 - 1 = 0 という方程式を解くことに相当します。 ニュートン法は, コンピュータを使ってこのような非線形の方程式を数値的に解く場合に用いられる方法です。 手計算でやるべきものではないです。

y0-k0
質問者

お礼

ご回答ありがとうございます。 x^2 - 1 = 0 の、「x^2」の「^」この記号?の意味が分からないんです・・・。 コンピュータを使って計算するのですか?