てもとツール

最大公約数・最小公倍数計算|すだれ算と素因数分解の途中式つき

最大公約数と最小公倍数を、すだれ算・素因数分解・ユークリッドの互除法の 3 つの途中式つきで求める無料ツール。3 つ以上の数や大きな数も受け取り、公約数の一覧と個数まで出します。

ブラウザ内処理 公開

改行・カンマ・空白のどれで区切っても読み取ります。20 個まで、1 個あたり 200 桁まで、 入力全体で 5,000 文字までです。

例を入れる

調べたい数を入れてください

12 18 のように 2 つ以上並べると、最大公約数と最小公倍数が出ます

このツールについて

使い方・特徴・補足情報

最大公約数・最小公倍数計算とは

最大公約数・最小公倍数計算は、数を並べて入れるだけで両方をまとめて求めるツールです。

答えのほかに、すだれ算・素因数分解・ユークリッドの互除法という 3 つの途中式が同時に並びます。習ったやり方の欄を見れば、自分の紙と段ごとに見比べられます。

3 つ以上の数もそのまま受け取ります。貼り付けた一覧を、改行・カンマ・空白のどれで区切っても読み取ります。

公約数の一覧と個数、公倍数の並びも一緒に出ます。入力した数はブラウザ内だけで処理し、外部サーバーには送信しません。

こんな人におすすめ

約数と倍数を求める人

楽になること

最大公約数と最小公倍数の計算

避けたい手間

手計算の写し間違いと検算の手間

解決できる困りごと

  • すだれ算を紙に書くときの、割る素数の見落としをなくせる
  • 3 つ以上の数を 2 つずつ計算し直す手間がなくなる
  • 答えが合わないときに、どの段でずれたのかを表から探せる
  • 公約数を全部書き出す作業を、個数の数え上げまで含めて任せられる
  • 手計算では止まってしまう桁数でも、最大公約数と最小公倍数が出る

使い方

  1. 調べたい数を入力欄に並べます。改行・カンマ・空白のどれで区切っても読み取ります。
  2. 最大公約数と最小公倍数が上に並びます。桁が多いときは総桁数も添えます。
  3. すだれ算の表で、どの素数で割ったかを段ごとに確認します。全部割り切れた段には印が付きます。
  4. 素因数分解の表で、素数ごとの指数の小さいほうと大きいほうを見比べます。
  5. 「答えをコピー」で結果を、「途中式ごとコピー」で表の結論まで写します。

使用例

宿題の答えを途中式ごと確かめる

12 と 18 を入れた例です。すだれ算の 2 段がどちらも全部割り切れる点に注目します。

入力

12 18

出力

最大公約数 6 / 最小公倍数 36(すだれ算は 2 と 3 の 2 段)

3 つの数で公式が崩れるのを見る

4・6・10 の例です。2 数では必ず成り立つ「最大公約数 × 最小公倍数 = 積」が崩れる点に注目します。

入力

4 6 10

出力

最大公約数 2 / 最小公倍数 60(2 × 60 = 120 で、積の 240 とは違う)

タイルの 1 辺を決める

84cm と 120cm の面を正方形で埋める例です。公約数の一覧が一緒に出る点に注目します。

入力

84 120

出力

最大公約数 12 / 公約数は 1・2・3・4・6・12 の 6 個

活用シーン

算数・数学の宿題の答え合わせ

すだれ算と素因数分解が同じ画面に並びます。自分の紙と段ごとに見比べて、どこで割り忘れたのかを探せます。

分数の約分をする前の下調べ

分子と分母を入れると、割るべき最大公約数が出ます。約分したあとの分数もそのまま表示します。

歯車が同じ噛み合わせに戻る周期

2 つの歯車の歯数を入れると最小公倍数が出ます。何枚ぶん進めば元の組み合わせに戻るかが読めます。

方眼やタイルの割り付け

縦と横の長さを入れると、余りなく敷ける正方形の最大の 1 辺が出ます。公約数の一覧から小さい辺も選べます。

くり返す当番が重なる日

12 日ごとと 18 日ごとの当番を入れると、次に重なるのが 36 日後だと分かります。公倍数の並びも出ます。

箱詰めの個数をそろえる

種類ごとの個数を入れると、余りなく同じ数ずつ分けられる最大の箱数が出ます。3 種類以上でも一度に扱えます。

技術的な解説

補足: 仕組み

最大公約数はユークリッドの互除法というアルゴリズムで求めます。割った余りで置き換える手順をくり返すため、桁が増えても段数はゆるやかにしか伸びません。

数はすべて BigInt で持ちます。最小公倍数は先に最大公約数で割ってから掛けるので、途中の積が桁あふれを起こしません。

素因数分解は 10 万までの試し割りのあとに、Miller-Rabin の素数判定と Pollard の rho 法を使います。

もっと詳しく

2 数の公式が 3 数で保証されない理由

最大公約数と最小公倍数を掛けると 2 数の積になります。12 と 18 なら 6 × 36 も 12 × 18 も 216 です。

3 つ以上では保証されません。4・6・10 は 2 × 60 で 120 になり、積の 240 と合いません。

2・3・5 のように一致する組もあります。たまたま合っても検算にはならないという意味です。

素数ごとの指数で見ると、3 数では真ん中の指数がどちらにも入りません。

すだれ算で 2 つの答えを同時に読む

すだれ算は、2 つ以上を割り切る素数で順に割っていく表です。割れない数はそのまま下ろします。

全部を割り切れた段の積が最大公約数になります。本ツールはその段に印を付け、色だけでなく文字でも示します。

割った数の積と、最後に残った数の積を掛けたものが最小公倍数です。1 つの表から両方が読めます。

大きな数で素因数分解が途中で止まること

最大公約数と最小公倍数は互除法なので、200 桁でも待たされません。素因数分解は事情が違います。

本ツールは 24 桁までを分解の対象とし、探索の反復回数にも上限を置きました。実測では、11 桁の素数 2 つの積(21 桁)まで分解できています。

それ以上の桁では、同じ 23 桁でも分解できるものとできないものが混じります。

上限に届いたときは黙って諦めません。ここまで分かった素因数と、残った合成数をそのまま並べます。

よくある質問

0 や負の数を入れるとどうなりますか?

負の数は絶対値にして計算します。0 は、ある数との最大公約数がその数、最小公倍数は 0 として扱い、そのことを画面に出します。

カンマは区切りと桁区切りのどちらで読まれますか?

既定では数の区切りとして読みます。桁区切りとして読ませたいときは詳細設定で切り替えられますが、3 桁ごとに置かれていない並びはエラーにします。

いくつまでの数を一度に入れられますか?

20 個まで、1 個あたり 200 桁まで、入力全体で 5,000 文字までです。最大公約数と最小公倍数はその桁のまま求め、素因数分解だけは 24 桁までを対象にしています。

すだれ算と素因数分解のどちらで習っても使えますか?

すだれ算の表、素因数分解の指数表、ユークリッドの互除法の 3 つを同じ画面に出します。習ったやり方の欄を見比べれば、どのやり方で解いた紙でも答え合わせができます。

関連記事

このツールの使い方や活用例をブログでも紹介しています。

関連ツール

同じカテゴリの他のツールも合わせてどうぞ。