• ベストアンサー

ユークリッド互除法の意義

2つの数の最大公約数の求め方の1つとしてユークリッド互除法を学習しました。 しかし、最大公約数の求め方は素因数分解でも求められます。 共通に割り切れるもので割っていけばよいので、わざわざユークリッド互除法を使わなくてもいいのでは?と思うのですが、ユークリッド互除法を使うことのよさってあるのですか? 回答よろしくお願いいたします。

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

  • ベストアンサー
  • f272
  • ベストアンサー率46% (7995/17090)
回答No.1

素因数分解をするときに,割る数はどう決めるのですか?2,3,5,7,9,...と順に試すのですか?与えられた数が簡単な数ならばそれでもいいけど,効率が悪すぎです。 例えば879017と902801の最大公約数は何?

その他の回答 (2)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

そう, 「素因数分解できる」なら, ユークリッドの互除法はいらない. そして, 小さい数であれば実際に素因数分解した方が速い. ただ, 相手が大きくなると話が変わってくる. つまり, 「効率的に素因数分解する方法」は知られていないのに対してユークリッドの互除法は非常に効率的に実行できる. その結果, 1000桁の数の素因数分解を実行する よりも 100000桁の 2つの数に対してユークリッドの互除法を実行する 方がはるかに簡単だったりする.

  • hashioogi
  • ベストアンサー率25% (102/404)
回答No.2

プログラマです。 プログラミングの世界では時たま結構桁数の大きい数の数の最大公約数を求める必要が出てきます。CPUは早いのでほとんどの場合人間の感覚では、ユークリッド互除法でも共通に割れる数を探す方法でもあまり差はないように感じる場合が多いですが、ユークリッド互除法の方が圧倒的に高速なのは間違いありません。

関連するQ&A

  • ユークリッドの互除法について

     ユークリッドの互除法を使って最大公約数、整数解を求められると聞いたのですが、イマイチ要領がつかめません。    もしよろしければ、どなたかユークリッドの互除法での最大公約数、整数解の求め方を教えてください。

  • ユークリッドの互除法について

    13を9で割ると 1.444…の循環小数で表せますが, このわり算の筆算ができる理由をユークリッドの互除法で説明したいと考えています。 ユークリッドの互除法について いくつかの文献を読みましたが どれも 最大公約数を求める方法として紹介されています。 筆算ができる理由としてユークリッドの互除法をどのように使えばよいか ご回答の程よろしくお願いします。

  • ユークリッドの互除法

    早急に解答求めています、 ご協力よろしくお願いします(>_<) 1.自分では簡単に素因数分解できない2つの整数(どちらとも9桁以上の整数)を決めてその最大公約数をeuclidの互除法で求め よ。 2.1で求めた数が最大公約数であることを示せ。 できれば途中式も省かないで書いていただきたいです。 よろしくお願い申し上げます。

  • ユークリッド互除法

    29441と32934の最大公約数をユークリッド互除法で求めて答えが1とでました。さらに最小公倍数を求めろとあるのですが、ユークリッド法でどうやって最小公約数を求めるのですか?

  • ユークリッドの互除法がわからない

    ユークリッドの互除法は、どうして割っていくと公約数が求められるのですか? 公約数を求めるやり方はわかったのですが、どうしてそうなるのかわかりません。 調べて説明や証明を読んでもチンプンカンプンでした。 わかりやすく教えていただけたら嬉しいです。 よろしくお願いします。

  • ユークリッドの互除法

    二つの整数a,bの最大公約数dを、ユークリッドの互除法で求める方法は分かります。 そうして求めたdは、適当な数x,yを使い、d=ax+byで表せることも何とか分かります。 しかし、d=ax+byが与えられたとき、ユークリッドの互除法を使って、特殊解xとyをどうやって求めたらよいのかが分かりません。 これまでの書き込みを見ても理解ができませんでした。 どなたか分かりやすくお教えください。

  • ユークリッドの互除法

    ユークリッドの互除法の証明の一部なのですが aをで割った商をbあまりをrとすると a=bq+r であるので r=a-bq である。ここで、この右辺はa bの最大公約数でわり切れるのは、なぜか教えて下さい。あと a bの最大公約数がrとb の公約数でもあるのはなぜですか?お願いします。

  • 最大公約数

    素因数分解を使わない最大公約数の求め方で、二つはユークリッドの互除法を利用するというのはわかったのですが、3つはどのようにして求めればいいと思いますか?

  • ユークリッドの互除法

    ユークリッドの互除法がよくわかりません。 m>nとして(m=nならばm=gcd(m,n)) m=sn+t (n>t)とあらわせる。 ここでgcd(m,n)=gcd(n,t)となるのがわかりません。 これがわかったらあとはあまり部分が0になるまでやればそのときに最大公約数が出るというのはわかるのですが、、、

  • ユークリッドの互除法

    ユークリッドの互除法の処方でつまづいています。 どなたか教えて頂けませんか。 aとbは正の整数でb≦aの関係にある。 aとbの最大公約数gcd(a,b)。 この時gcd(a,b)=ax+byの解となる(x,y)のペアはいくついるのでしょうか? 直感ですと(x,y)は一つしか存在しないように感じるのですが、どうやって記述すればいいのでしょうか? よろしくお願いします。