소인수분해란?
소인수분해는 자연수를 서로 곱하면 그 수가 되는 소수들의 집합으로 쪼개는 과정입니다. 소수란 1보다 큰 수 중에서 1과 자기 자신만을 약수로 가지는 수를 말합니다(2, 3, 5, 7, 11, …). 산술의 기본정리에 따르면, 1보다 큰 모든 정수는 인수의 순서를 무시할 때 단 하나의 소인수분해만을 가집니다.
계산기 사용법
2 이상의 자연수를 입력하고 계산 버튼을 누르세요. 이 도구는 결과를 두 가지 형태로 보여줍니다. 하나는 모든 소수를 하나씩 나열한 전개식이고, 다른 하나는 반복되는 소수를 거듭제곱으로 묶어 간결하게 표현한 지수식입니다. 또한 서로 다른 소수가 몇 개 나타나는지, 중복도를 포함한 소인수의 총 개수가 몇 개인지, 그리고 입력한 수 자체가 소수인지도 함께 알려줍니다.
계산 원리
이 계산기는 시행 나눗셈(trial division) 방식을 사용합니다. 가장 작은 소수인 2부터 시작해, 각 후보 약수 \(d\)로 나누어떨어지는 동안 계속 나누면서 몇 번 나누어지는지 셉니다. 검사할 약수는 \(\sqrt{n}\)까지만 보면 충분한데, 제곱근 아래에서 약수가 발견되지 않으면 남아 있는 수는 그 자체로 소수일 수밖에 없기 때문입니다. 그 결과는 다음 형태로 표현됩니다:
$$n = p_1^{a_1} \times p_2^{a_2} \times \cdots \times p_k^{a_k}$$
예제 풀이
\(n = 360\)을 예로 들어 보겠습니다. 먼저 2로 세 번 나눕니다: \(360 \to 180 \to 90 \to 45\) (\(2^3\)). 다음으로 3으로 두 번 나눕니다: \(45 \to 15 \to 5\) (\(3^2\)). 마지막으로 5로 한 번 나눕니다: \(5 \to 1\) (\(5^1\)). 따라서 다음과 같습니다:
$$360 = 2^3 \times 3^2 \times 5$$
이를 전개하면 \(2 \times 2 \times 2 \times 3 \times 3 \times 5\) 가 되며, 서로 다른 소수는 3개, 소인수의 총 개수는 6개입니다.
자주 묻는 질문
왜 입력값이 최소 2 이상이어야 하나요? 0과 1은 소인수분해가 존재하지 않습니다. 특히 1은 소수도 합성수도 아닙니다.
"중복도를 포함한다"는 게 무슨 뜻인가요? 각 소수가 나타나는 횟수만큼 모두 세는 것을 의미합니다. 360의 경우 2가 세 번, 3이 두 번, 5가 한 번이므로 총 6개입니다.
1은 소수인가요? 아닙니다. 소수는 정의상 서로 다른 양의 약수를 정확히 두 개 가져야 하지만, 1은 약수가 하나뿐입니다.