최대공약수·최소공배수 계산기
여러 숫자의 최대공약수와 최소공배수를 계산합니다.
쉼표 또는 공백으로 숫자를 구분하세요
작동 방식
- 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)) # 60Comments & Feedback
Comments are powered by Giscus. Sign in with GitHub to leave a comment.