MCP로 연결 →

계산 입력

자연수를 쉼표로 구분해 입력하세요

공식

공식: 공약수 및 최대공약수(GCF) 계산기
Show calculation steps (1)
  1. Common Factors

    Common Factors: 공약수 및 최대공약수(GCF) 계산기

    The common factors of a set are exactly the divisors of the GCF.

광고

결과

최대공약수
8
GCF (최대공약수, GCD)
The factors of 16 are: 1, 2, 4, 8, 16
The factors of 24 are: 1, 2, 3, 4, 6, 8, 12, 24
The factors of 64 are: 1, 2, 4, 8, 16, 32, 64
The factors of 136 are: 1, 2, 4, 8, 17, 34, 68, 136
공약수는 다음과 같습니다: 1, 2, 4, 8

이 계산기는 무엇을 하나요?

두 개 이상의 양의 정수를 입력하면 세 가지 결과를 한꺼번에 보여 줍니다. 각 수의 약수(나누어떨어지게 하는 수) 전체 목록, 모든 수가 공통으로 가지는 공약수, 그리고 최대공약수(GCF, 영어로는 GCD라고도 함)입니다. 분수를 약분하거나 식을 인수분해할 때, 또는 정수론 숙제를 풀 때 유용합니다.

두 수의 약수를 나타내는 겹친 두 원으로, 공통 약수가 가운데에 있음
공약수는 모든 수가 공유하는 약수이며, 그중 가장 큰 것이 최대공약수(GCD)입니다.

사용 방법

자연수를 쉼표로 구분해 입력하세요. 예를 들어 136, 64, 24, 16처럼 적으면 됩니다. 그러면 각 수의 약수 목록이 오름차순으로 표시되고, 이어서 공약수와 최대공약수(GCF) 값이 나타납니다. 입력값은 반드시 양의 정수여야 하며, 0이나 음수, 소수는 약수를 구하는 데 사용할 수 없습니다.

계산 원리

정수 dn의 약수라는 것은 \(n \bmod d = 0\), 즉 나머지 없이 나누어떨어진다는 뜻입니다. 모든 약수를 빠르게 찾으려면 i를 1부터 n의 제곱근까지 차례로 확인합니다. in을 나누어떨어지게 하면 \(i\)와 \(n/i\) 둘 다 약수가 됩니다. 여러 수의 최대공약수는 유클리드 호제법을 두 수씩 적용해 구합니다. b가 0이 아닌 동안 (a, b)를 (b, a mod b)로 계속 바꿔 가다가, 마지막에 남는 a가 바로 최대공약수입니다. $$\gcd(a, 0) = a, \quad \gcd(a, b) = \gcd(b, \; a \bmod b)$$ 한 가지 알아 두면 좋은 사실은, 전체 수들의 공약수는 곧 최대공약수의 약수와 정확히 같다는 점입니다. $$\text{CommonFactors} = \{\, d : g \bmod d = 0 \,\}, \quad g = \gcd(n_1, n_2, \dots)$$

광고
수를 나머지로 반복해서 바꾸는 유클리드 호제법의 순서도
유클리드 호제법은 b가 0이 될 때까지 (a, b)를 (b, a mod b)로 반복해서 바꿉니다.

예제 풀이

136, 64, 24, 16의 경우를 봅시다. 16의 약수는 1, 2, 4, 8, 16이고, 24의 약수는 1, 2, 3, 4, 6, 8, 12, 24, 64의 약수는 1, 2, 4, 8, 16, 32, 64, 136의 약수는 1, 2, 4, 8, 17, 34, 68, 136입니다. 유클리드 호제법을 적용하면 \(\gcd(16, 24) = 8\), 다시 \(\gcd(8, 64) = 8\), \(\gcd(8, 136) = 8\)이 되어 최대공약수는 8입니다. 8의 약수는 1, 2, 4, 8이며, 바로 이 값들이 공약수가 됩니다.

자주 묻는 질문

GCF와 GCD는 같은 건가요? 네, 같습니다. 영어의 "greatest common factor(최대공약수)"와 "greatest common divisor"는 같은 값을 가리키는 두 가지 이름일 뿐입니다.

공통 약수가 하나도 없으면 어떻게 되나요? 모든 양의 정수는 1을 공통 약수로 가지므로, 공약수는 최소한 {1}이고 최대공약수도 최소 1입니다. 공통 약수가 1뿐인 수들을 서로소(coprime)라고 합니다.

숫자를 하나만 입력해도 되나요? 네. 그 수의 약수가 나열되고, 최대공약수는 그 수 자신이 됩니다.

최종 업데이트: