최대공약수(GCD)·최소공배수(LCM) 및 소인수분해 계산기

HOT

여러 숫자의 최대공약수(GCD), 최소공배수(LCM), 소인수분해 거듭제곱 표현 및 모든 약수 목록 계산

ADVERTISEMENT · TOP BANNER

Responsive 728x90 / 320x100 Ad Slot

(CLS Prevention Active · Zero Shift)
100% 브라우저 연산 (서버 전송 없음, 개인정보 안전)
Interactive Client Mode
여러 숫자의 최대공약수(GCD), 최소공배수(LCM), 소인수분해 및 약수 목록 계산기

공통 최대공약수 및 최소공배수

Euclidean Algorithm
최대공약수 (GCD / GCF)

12

모든 수의 공통된 가장 큰 약수

최소공배수 (LCM)

360

모든 수의 공통된 가장 작은 배수

각 숫자별 소인수분해 및 약수 목록

24
소인수분해:

2ⁿ (2^3) × 3

모든 약수 (8개):

1, 2, 3, 4, 6, 8, 12, 24

36
소인수분해:

2ⁿ (2^2) × 3ⁿ (3^2)

모든 약수 (9개):

1, 2, 3, 4, 6, 9, 12, 18, 36

60
소인수분해:

2ⁿ (2^2) × 3 × 5

모든 약수 (12개):

1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30, 60

ADVERTISEMENT · HIGH CTR IN-FEED

Native In-Feed / High Viewability Ad Slot

(CLS Prevention Active · Zero Shift)

최대공약수·최소공배수와 소인수분해의 수론적 구조와 응용

최대공약수(GCD: Greatest Common Divisor)와 최소공배수(LCM: Least Common Multiple), 그리고 소인수분해(Prime Factorization)는 기원전 300년경 유클리드의 《기하학 원론(Elements)》부터 현대 암호학(RSA, 타원곡선), 컴퓨터 알고리즘, 분산 시스템 주기에 이르기까지 정수론(Number Theory)의 기틀을 형성하는 가장 아름답고 실용적인 수학적 개념입니다. 산술의 기본정리(Fundamental Theorem of Arithmetic)에 따르면 1보다 큰 모든 자연수는 소수(Prime Number)들의 곱으로 단 한 가지 방식으로만 유일하게 분해되며, 이 소인수들은 수의 세계에서 쪼갤 수 없는 '원자(Atoms)'와 같은 역할을 수행합니다.

두 개 이상의 정수에서 공통된 약수 중 가장 큰 값을 찾는 최대공약수와 공통된 배수 중 가장 작은 값을 찾는 최소공배수는 실생활의 다양한 최적화 문제와 직결됩니다. 복잡한 분수의 약분과 통분은 물론, 서로 다른 크기의 직사각형 공간을 남김없이 채울 수 있는 최대 크기의 정사각형 타일을 재단하거나, 톱니 수가 다른 여러 기어들이 처음 맞물렸던 위치로 다시 되돌아오는 최소 회전 주기를 산출하는 데 필수적입니다. 두 양의 정수 $a, b$에 대하여 $a \times b = \text{GCD}(a, b) \times \text{LCM}(a, b)$라는 대칭적 항등식은 정수론의 가장 우아한 결실 중 하나입니다.

특히 유클리드 호제법(Euclidean Algorithm)은 인류 역사상 가장 오래되었으면서도 현대 컴퓨터 과학에서 가장 효율적인 알고리즘으로 손꼽힙니다. 아무리 큰 천문학적 숫자라도 나눗셈의 나머지를 반복해서 취하는 로그 시간 복잡도($O(\log(\min(a, b)))$)로 순식간에 최대공약수를 도출합니다. 오르보킷 GCD·LCM·소인수분해 계산기는 2개 이상의 정수를 입력받아 유클리드 호제법 기반의 GCD·LCM 계산, 각 숫자의 소인수 거듭제곱 분해식, 모든 양의 약수 목록 및 개수·합계까지 단계별 풀이와 함께 완벽히 제공합니다.

유클리드 호제법 및 산술의 기본정리(Fundamental Theorem of Arithmetic)

정수의 나눗셈 정리와 소수 거듭제곱 분해를 통한 공약수·공배수 도출 원리입니다.

유클리드 호제법 & 소인수 지수 비교 공식Mathematical Formulation
GCD(a, b) = GCD(b, a mod b) | LCM(a, b) = (a × b) ÷ GCD(a, b) | 약수 개수 = ∏(e_i + 1)

두 수 $a$를 $b$로 나눈 나머지를 $r$이라 할 때, $a$와 $b$의 최대공약수는 $b$와 $r$의 최대공약수와 완전히 같습니다. 소인수분해 표현에서 GCD는 각 소인수의 '최소 지수'를 곱하고, LCM은 '최대 지수'를 곱하여 구합니다.

두 자연수 24와 36의 GCD, LCM, 소인수분해 및 약수 개수 단계별 완전 풀이
각 숫자의 소인수분해24 = 2³ × 3¹, 36 = 2² × 3²소인수 집합 {2, 3}
최대공약수(GCD) 산출 (최소 지수 선택)GCD = 2^min(3,2) × 3^min(1,2) = 2² × 3¹ = 4 × 3GCD = 12
최소공배수(LCM) 산출 (최대 지수 선택)LCM = 2^max(3,2) × 3^max(1,2) = 2³ × 3² = 8 × 9LCM = 72
항등식 검산 및 약수 개수 산출24 × 36 = 864 = 12 × 72 (성립) | 24의 약수: (3+1)(1+1)24의 약수 8개, 36의 약수 9개

👉 24와 36의 최대공약수는 12, 최소공배수는 72이며, 24의 모든 약수는 [1, 2, 3, 4, 6, 8, 12, 24] 입니다.

  • 유클리드 호제법: 나머지가 0이 될 때까지 나눗셈을 반복하여 마지막으로 나누는 수가 두 수의 최대공약수가 됩니다.
  • 두 수의 곱과 GCD·LCM의 관계: $a \times b = \text{GCD}(a, b) \times \text{LCM}(a, b)$ 항등식이 항상 성립합니다.
  • 3개 이상 수의 확장: $\text{GCD}(a, b, c) = \text{GCD}(\text{GCD}(a, b), c)$ 결합법칙을 순차 적용하여 다중 정수를 해결합니다.
  • 약수의 총개수와 총합: 소인수분해 $N = p_1^{a} p_2^{b}$일 때 약수의 개수는 $(a+1)(b+1)$개이며, 약수의 총합은 $(1 + p_1 + \dots + p_1^{a})(1 + p_2 + \dots + p_2^{b})$로 전개됩니다.

자주 쓰이는 주요 정수쌍별 소인수분해·GCD·LCM·약수 개수 빠른 대조표

수학 문제 풀이, 타일 시공, 기어비 계산 시 자주 등장하는 정수쌍들의 수론적 성질 기준표입니다.

정수쌍 (A, B)A의 소인수분해B의 소인수분해최대공약수 (GCD)최소공배수 (LCM)A의 약수 개수서로소 여부
12, 182² × 3¹2¹ × 3²6366개아님 (공약수 2, 3, 6)
24, 362³ × 3¹2² × 3²12728개아님 (공약수 12)
15, 283¹ × 5¹2² × 7¹14204개서로소 (Coprime)
45, 603² × 5¹2² × 3¹ × 5¹151806개아님 (공약수 15)
48, 722⁴ × 3¹2³ × 3²2414410개아님 (공약수 24)
16, 252⁴5²14005개서로소 (Coprime)
54, 902¹ × 3³2¹ × 3² × 5¹182708개아님 (공약수 18)
70, 1052¹ × 5¹ × 7¹3¹ × 5¹ × 7¹352108개아님 (공약수 35)
64, 962⁶2⁵ × 3¹321927개아님 (공약수 32)
84, 1262² × 3¹ × 7¹2¹ × 3² × 7¹4225212개아님 (공약수 42)

* 공약수가 1뿐인 두 수를 '서로소(Coprime)'라 하며, 이 경우 두 수의 최소공배수는 두 수의 단순 곱(A × B)과 일치합니다.

ADVERTISEMENT · IN-ARTICLE CONTENT

High-Engagement In-Article Native Ad Slot

(CLS Prevention Active · Zero Shift)

사용 방법

11. 2개 이상의 정수를 쉼표 또는 공백으로 입력

입력창에 분석하고자 하는 자연수들을 쉼표(,)나 띄어쓰기로 구분하여 입력합니다 (예: 24, 36, 60 또는 105, 140).

22. 최대공약수(GCD) 및 최소공배수(LCM) 결과 즉시 확인

유클리드 호제법 및 다중 소인수 지수 결합 알고리즘에 의해 입력된 모든 숫자의 GCD와 LCM이 실시간으로 도출됩니다.

33. 각 숫자의 소인수분해 거듭제곱 표현식 검토

각 숫자가 어떤 소수들의 거듭제곱($p_1^{a} \times p_2^{b} \times \dots$)으로 구성되어 있는지 시각적 소인수 태그와 함께 확인합니다.

44. 약수(Divisors) 목록, 약수 개수 및 총합 확인 후 복사

각 숫자의 모든 양의 약수 리스트, 소인수 지수를 활용한 약수의 총개수와 총합 계산 결과를 검토하고 클립보드에 복사합니다.

실생활 공간 분할, 기계 주기 및 프로그래밍 활용 시나리오

타일 재단, 버스 배차 간격 일치, 기어 맞물림 주기 등 일상 속 최적화 사례입니다.

인테리어 바닥 타일링: 정사각형 타일 최대 크기 재단

가로 180cm, 세로 240cm인 현관 바닥에 타일을 자르지 않고 남김없이 채울 수 있는 가장 큰 정사각형 타일 한 변의 길이는 GCD(180, 240) = 60cm입니다 (총 12장의 타일 소요).

대중교통 환승: 두 노선 버스의 동시 도착 주기 계산

A 버스는 12분마다, B 버스는 18분마다 정류장에 도착할 때, 두 버스가 오전 8시에 동시 도착했다면 다음 번에 동시에 정류장에 도착하는 시간은 LCM(12, 18) = 36분 뒤인 오전 8시 36분입니다.

기계 공학: 기어 톱니바퀴의 완전 회전 주기

톱니 수가 24개인 구동 기어와 36개인 피동 기어가 맞물려 회전할 때, 처음 맞물렸던 톱니가 다시 일치할 때까지 맞물려야 하는 톱니 수는 LCM(24, 36) = 72개(구동 기어 3회전, 피동 기어 2회전)입니다.

초중고 분수 덧셈·뺄셈의 분모 통분

분수 5/24 + 7/36 을 연산할 때 분모의 최소공배수 LCM(24, 36) = 72로 통분하여 (15 + 14) ÷ 72 = 29/72 로 가장 간결하게 계산할 수 있습니다.

💡 수학자 & 알고리즘 전문가의 실전 노하우 & 주의사항

✓ 유클리드 호제법을 손으로 암산할 때 큰 수에서 작은 수를 반복해서 뺄 것

나눗셈 나머지가 헷갈릴 때는 GCD(a, b) = GCD(a - b, b) 성질을 활용하세요. 예: GCD(91, 52) = GCD(91 - 52, 52) = GCD(39, 52) = GCD(13, 39) = 13으로 암산할 수 있습니다.

✓ 소수 판정 시 대상 숫자의 '제곱근'까지만 나누어 보면 충분함

어떤 수 N이 소수인지 확인할 때 2부터 N-1까지 전부 나눌 필요 없이, √N 이하의 소수들로만 나누어 떨어지지 않으면 N은 무조건 소수입니다. 예: 101의 경우 √101 ≈ 10.04이므로 2, 3, 5, 7만 확인하면 즉시 소수로 확정됩니다.

✓ 두 수가 연속한 정수(n, n+1)이면 무조건 서로소(GCD = 1)

연속한 두 자연수는 공약수로 1 이외의 수를 가질 수 없습니다. 예: GCD(14, 15) = 1, GCD(99, 100) = 1 이므로 두 수의 LCM은 항상 n(n+1)이 됩니다.

✓ 3개 이상 숫자의 최소공배수 계산 시 단순 곱셈 실수 주의

두 수에서는 LCM(a,b) = ab / GCD(a,b)가 성립하지만, 3개 수에서는 LCM(a,b,c) ≠ abc / GCD(a,b,c) 입니다. 반드시 두 개씩 결합하여 LCM(LCM(a,b), c) 형태로 단계별 계산해야 합니다.

⚠️ 흔히 하는 실수 & 예방법

❌ 약수의 개수를 구할 때 지수에 1을 더하지 않고 그냥 곱하는 실수
✅ 소인수분해 N = 2³ × 3²에서 약수의 개수는 3 × 2 = 6개가 아니라, 0제곱(1)을 포함해야 하므로 (3+1) × (2+1) = 4 × 3 = 12개입니다. 항상 각 지수에 1을 더하는 것을 잊지 마세요.
❌ 숫자 1을 소수(Prime Number)라고 착각하는 경우
✅ 소수의 수학적 정의는 '1보다 큰 자연수 중 1과 자기 자신만을 약수로 갖는 수'입니다. 1은 소수도 합성수도 아닌 유일한 단위수(Unit)입니다.
❌ 두 수의 차이가 작을 때 최소공배수를 단순 두 수의 곱으로 계산하는 오류
✅ 두 수가 서로소가 아니라면 단순 곱셈 시 최소공배수가 아닌 거대한 공배수가 도출됩니다. 반드시 GCD로 나누어 중복된 소인수를 1회 제거해야 합니다.
❌ 매우 큰 수 연산 시 자바스크립트 부동소수점 오버플로우 발생
✅ 정수가 2^53 - 1(약 9000조)을 초과하면 일반 Number 타입은 정밀도 손실이 발생합니다. 오르보킷 엔진은 내부적으로 BigInt 자료형을 사용하여 자릿수 제한 없이 정확한 정수 계산을 보장합니다.

자주 묻는 질문 (FAQ)

사용자 및 전문가들이 가장 자주 묻는 핵심 질문과 명확한 해답입니다.

7 Q&As

유클리드 호제법은 소인수분해를 전혀 하지 않고 오직 '나눗셈의 나머지(Modulo)' 연산만을 반복하기 때문입니다. 큰 수를 소인수분해하는 것은 현대 암호학(RSA)의 근간이 될 정도로 연산량이 극도로 많지만, 유클리드 호제법은 나눗셈 1단계마다 숫자의 크기가 최소 절반 이하로 줄어드는 로그 시간 복잡도($O(\log N)$)를 보장하므로 수백 자리의 거대한 숫자도 1밀리초 내에 최대공약수를 도출합니다.

ADVERTISEMENT · FOOTER BANNER

Wide Responsive Banner

(CLS Prevention Active · Zero Shift)