教育・学習

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

2〜20個の整数の最大公約数と最小公倍数を、互除法と素因数分解つきで計算。

  • 即時
  • 無料
  • プライベート(ローカル処理)
  • 登録不要

カンマ・スペース・セミコロンで区切って入力してください。

例:
最大公約数GCD
6
最小公倍数LCM
36
ユークリッドの互除法(手順)
素因数分解

ℹ️ BigInt による厳密な整数計算:巨大な最小公倍数でも丸め誤差はありません。100%ローカルで、データは送信されません。

最大公約数と最小公倍数をオンラインで計算(途中式つき)

最大公約数(GCD)と最小公倍数(LCM)は、小学校の算数で公約数・公倍数として学び、中学校の素因数分解を経て、高校数学Aのユークリッドの互除法や1次不定方程式へと発展する、整数の基本です。このツールは 2〜20 個の整数を対象に、互除法の割り算、各数の素因数分解、ベズーの等式の係数、既約分数までまとめて表示します。

約分・通分、「次にそろうのはいつ?」という周期の問題、長方形を同じ大きさの正方形で敷き詰める問題など、使う場面はたくさんあります。宿題を確かめたい中高生、子どもの勉強を見る保護者、解答を作る先生、周期や歯車比、RSA 暗号の鍵を扱うプログラマーまで、正確な答えとノートに書き写せる途中式が得られます。

  1. 数を入力

    「整数(2〜20個)」の欄に、カンマ・スペース・セミコロンで区切って 2〜20 個の整数を入力するか、例のボタンを押します。

  2. 最大公約数と最小公倍数を確認

    2枚のカードが入力と同時に更新されます。「コピー」ボタンで、区切り記号なしの数値をクリップボードにコピーできます。

  3. 性質をチェック

    カードの下に「互いに素」かどうか(3つ以上なら「どの2つも互いに素」かどうかも)、2つの数の場合は検算 GCD × LCM = a × b、ベズーの等式、既約分数 a/b が表示されます。

  4. 解説を開く

    「ユークリッドの互除法(手順)」で各割り算 a = q × b + r を、「素因数分解」で指数の最小値と最大値を確認できます。

最大公約数・最小公倍数の求め方:互除法と素因数分解

ツールはユークリッドの互除法を使います。大きい数を小さい数で割って a = q × b + r とし、GCD(a, b) = GCD(b, r) が成り立つので、b と余り r で同じことを繰り返します。最後の 0 でない余りが最大公約数です。最小公倍数は素因数分解しなくても LCM(a, b) = a × b ÷ GCD(a, b) で求まります。

3つ以上の数は GCD(a, b, c) = GCD(GCD(a, b), c) のように順に求め、最小公倍数も同様です。素因数分解のパネルでは学校で習うもう1つの方法を示します。a = 2α × 3β × … と表すと、最大公約数は共通する素因数を最小の指数で、最小公倍数は現れるすべての素因数を最大の指数でかけ合わせたものです。

  • a・b:各行の割られる数と割る数(大きい数が先)。
  • q:整数の商。r:余り(常に 0 以上 b − 1 以下)。
  • GCD:すべての数を割り切る最大の整数。LCM:すべての数で割り切れる最小の正の整数。
  • u・v:ベズーの係数。u × a + v × b = GCD(a, b) を満たす整数(負になることもある)で、拡張ユークリッドの互除法で求めます。
  • α・β…:素因数分解の指数。例:12 = 22 × 31。

最大公約数・最小公倍数の計算例

入力最大公約数最小公倍数ツールが併せて表示する内容
12, 186366 × 36 = 216 = 12 × 18、ベズー:(−1) × 12 + 1 × 18 = 6、12/18 = 2/3
8, 12, 204120GCD(8, 12) = 4 → GCD(4, 20) = 4、LCM:24 → 120
17, 311527互いに素、11 × 17 + (−6) × 31 = 1
1071, 4622123,562割り算 3 回、(−3) × 1,071 + 7 × 462 = 21、1,071/462 = 51/22
6, 10, 15130全体では互いに素だが、どの2つも互いに素ではない(6 と 10 は 2 を共有)
2, 3, 5, 7, 11, 13, 17, 19, 231223,092,870どの2つも互いに素なので、最小公倍数は積と等しい

最大公約数・最小公倍数の使い道

  • 分数:12/18 を最大公約数 6 で割って 2/3 に約分。5/12 + 7/18 は最小公倍数 36 で通分して 15/36 + 14/36 = 29/36。
  • 周期・時刻表:8:00 に同時に出発した 12 分おきと 18 分おきのバスは、最小公倍数 36 分後の 8:36 に再び同時に出発します。
  • 切り分け・タイル:120 cm × 84 cm の板を余りなく最大の正方形で敷き詰めるには、GCD(120, 84) = 12 cm の正方形を 10 × 7 = 70 枚使います。
  • 歯車・リズム:歯数 12 と 18 の歯車は、36 歯分かみ合うと、つまり小さい歯車が 3 回転、大きい歯車が 2 回転するともとの位置に戻ります。
  • 暗号:RSA では公開指数 e が φ(n) と互いに素である必要があり、秘密鍵 d は φ(n) を法とする e の逆元で、ベズーの等式から求めます。e = 17、φ(n) = 3,120 ならツールは (−367) × 17 + 2 × 3,120 = 1 を表示するので、d = −367 + 3,120 = 2,753 です。実際、17 × 2,753 = 15 × 3,120 + 1 となります。

よくある間違い

  • 2つを取り違える:最大公約数は最も小さい数以下、最小公倍数は最も大きい数以上です。12 と 18 で「最大公約数 36」は明らかな誤りです。
  • 数を掛けて最小公倍数とする:12 × 18 = 216 ですが、最小公倍数は 36 です。2つの数の積が最小公倍数になるのは、互いに素なとき(17 × 31 = 527)だけです。
  • 3つ以上の数に GCD × LCM = 積 を使う:8・12・20 では 4 × 120 = 480 ですが、8 × 12 × 20 = 1,920 です。
  • 桁区切りのカンマを入れる:カンマは数の区切りとして読まれるため、「1,071」は 1 と 71 の2つの数になります。1071 と入力してください。

すべての計算はブラウザ内で、BigInt による厳密な整数演算で行われ、数値がサーバーに送信されることはありません。制限:0 以外の整数 2〜20 個、各 15 桁まで。素因数分解は、すべての素因数をすばやく見つけられる場合(1,000,000 までの試し割りと素数判定)にのみ表示されます。

よくある質問

最大公約数と最小公倍数の違いは?

最大公約数(GCD)はすべての数を割り切る最も大きい数、最小公倍数(LCM)はすべての数で割り切れる最も小さい正の数です。12 と 18 の公約数は 1・2・3・6 なので最大公約数は 6、公倍数は 36・72・108… なので最小公倍数は 36 です。約分には最大公約数、通分には最小公倍数を使います。

ユークリッドの互除法はどう計算する?

大きい数を小さい数で割って余りを求め、次に「割る数」と「余り」で同じ割り算を繰り返し、余りが 0 になったら終了です。1,071 と 462 なら 1,071 = 2 × 462 + 147、462 = 3 × 147 + 21、147 = 7 × 21 + 0 となります。最後の 0 でない余り 21 が最大公約数で、わずか 3 回の割り算で求まります。

なぜ GCD × LCM = a × b になる?

2つの数では、各素因数が最大公約数には小さいほうの指数で、最小公倍数には大きいほうの指数で 1 回ずつ現れるため、掛けるとちょうど a × b になります。12 と 18 なら 6 × 36 = 216 = 12 × 18 です。ただし 3つ以上の数にはそのまま拡張できず、8・12・20 では 4 × 120 = 480 となり、積の 8 × 12 × 20 = 1,920 とは一致しません。

「互いに素」とは?

2つの数の最大公約数が 1 であるとき、その2数は「互いに素」であるといいます。たとえば 17 と 31 は互いに素で、最小公倍数は積の 527 になります。3つ以上の数では「全体として互いに素」と「どの2つも互いに素」を区別します。6・10・15 は全体の最大公約数が 1 ですが、6 と 10 が素因数 2 を共有しているため、最小公倍数は積の 900 ではなく 30 です。

ベズーの等式は何に使う?

u × a + v × b = GCD(a, b) を満たす整数 u・v が必ず存在するという定理で、ツールは拡張ユークリッドの互除法で求めます(例:(−1) × 12 + 1 × 18 = 6)。1次不定方程式 ax + by = c の解法や、逆元の計算に使います。11 × 17 + (−6) × 31 = 1 から、31 を法とする 17 の逆元は 11 とわかります。RSA 暗号の秘密鍵もこの方法で求めます。

3つの数の最大公約数・最小公倍数はどう求める?

2つずつ順に求めます。GCD(8, 12, 20) = GCD(GCD(8, 12), 20) = GCD(4, 20) = 4、LCM(8, 12, 20) = LCM(LCM(8, 12), 20) = LCM(24, 20) = 120 です。素因数分解を使うなら、8 = 2³、12 = 2² × 3、20 = 2² × 5 より、最大公約数は 2² = 4、最小公倍数は 2³ × 3 × 5 = 120 です。このツールは 0 以外の 15 桁までの整数を最大 20 個まで受け付け、BigInt で丸め誤差なく計算します(マイナス記号は無視されます)。