コンテンツへスキップ
🛠️ToolsShed

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

複数の数値の最大公約数と最小公倍数を計算します。

数値をコンマまたはスペースで区切ります

仕組み

  • GCD(最大公約数)は、すべての入力数を割り切る最大の数です。
  • LCM(最小公倍数)は、すべての入力数がそれに含まれる最小の数です。
  • ユークリッドアルゴリズムを使用して効率的にGCDを計算します。

このツールについて

最大公約数(GCD)と最小公倍数(LCM)は、数学、工学、コンピュータ科学全体で使用される数論の基本的な概念です。GCDは整数の集合を割り切る最大の数を表し、LCMはそれら全てで割り切られる最小の数です。分数を簡約する、比率を含む問題を解く、周期的なサイクルを管理する、アルゴリズムを最適化するなど、GCDとLCMを理解して計算することは、整数を効率的に操作する上で不可欠です。

このツールを使用するには、2つ以上の整数を入力フィールドにコンマまたはスペースで区切って入力します。ツールは即座にGCD(数値の最大公約数)とLCM(最小公倍数)を計算します。これらの計算はアルゴリズムの段階的な分解と共に明確に表示され、基礎となるロジックを理解するのに役立ちます。計算機は任意の正の整数を処理し、複数の数値とシームレスに動作するため、数論を学ぶ学生、実際の問題を解く専門家、迅速で信頼できる約数と倍数の計算が必要な誰にとっても価値があります。

よくある質問

コード実装

import math

def gcd(a: int, b: int) -> int:
    """Euclidean algorithm for Greatest Common Divisor."""
    while b:
        a, b = b, a % b
    return a

def lcm(a: int, b: int) -> int:
    """Least Common Multiple via GCD."""
    return abs(a * b) // gcd(a, b)

def gcd_multi(*nums: int) -> int:
    """GCD of multiple numbers."""
    result = nums[0]
    for n in nums[1:]:
        result = gcd(result, n)
    return result

def lcm_multi(*nums: int) -> int:
    """LCM of multiple numbers."""
    result = nums[0]
    for n in nums[1:]:
        result = lcm(result, n)
    return result

# Examples
print(gcd(48, 18))           # 6
print(lcm(4, 6))             # 12
print(gcd_multi(12, 18, 24)) # 6
print(lcm_multi(4, 6, 10))   # 60

# Using Python's built-in math module (Python 3.9+)
print(math.gcd(48, 18))      # 6
print(math.lcm(4, 6, 10))    # 60

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.