最大公约数与最小公倍数计算
计算多个数字的最大公约数和最小公倍数。
用逗号或空格分隔数字
工作原理
- GCD(最大公约数)是能整除所有输入数字的最大数字。
- LCM(最小公倍数)是所有输入数字都能整除的最小数字。
- 使用欧几里得算法高效计算GCD。
关于此工具
最大公约数(GCD)和最小公倍数(LCM)是数论中的基本概念,广泛应用于数学、工程和计算机科学。GCD代表整除一组整数的最大数,而LCM是被所有这些数整除的最小数。无论你是在化简分数、求解涉及比例的问题、管理周期循环,还是优化算法,理解和计算GCD与LCM对于高效处理整数都是必不可少的。
要使用此计算器,在输入框中输入两个或多个整数,用逗号或空格分隔。该工具立即计算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)) # 60Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.