소수 확인 도구이란?

어떤 숫자가 소수인지 즉시 확인하세요. 합성수의 경우 완전한 소인수분해가 표시됩니다. 임의의 범위에서 소수 목록을 생성하고 이전/다음 소수를 찾을 수 있어 수학 교육, 암호화 기초, 수론에 유용합니다.

입력에 상한이 없습니다. JavaScript 안전 정수 범위에 드는 수는 더 빠른 시행 나눗셈 경로를 쓰고, 그보다 큰 수는 결정적 BigInt 밀러-라빈 테스트로 넘어가므로 암호 규모의 소수도 정확히 판정합니다. 인수 분해 트리는 한 단계씩 펼쳐 보여줍니다(84 → 2 × 42 → 2 × 21 → 3 × 7). 아주 큰 합성수에서는 10^7을 넘는 남은 보조 인수를 더 쪼개지 않고 그대로 표시합니다. 범위 검색은 1천만 개까지 결과를 스크롤할 수 있고, N번째 소수도 바로 찾을 수 있어 코딩 챌린지나 정수론 연습에 좋습니다.

사용 방법

  1. 양의 정수를 입력하여 소수 여부를 확인하세요. 큰 숫자도 결과가 즉시 나타납니다.
  2. 합성수는 완전한 소인수분해 트리를 확인하세요. 소수는 위아래 가장 가까운 소수가 표시됩니다.
  3. 범위 검색으로 두 수 사이의 모든 소수를 나열하거나 첫 N개의 소수를 생성하세요.

사용 시기

  • 정수론·이산수학 과제 답안을 확인할 때.
  • 해시 함수나 교육용 암호 예제에 쓸 소수 모듈러스를 고를 때.
  • Project Euler나 알고리즘 대회 문제에서 처음 N개 소수가 필요할 때.

결과

97을 입력하면 소수입니다. 84를 입력하면 소수가 아니며 인수는 2² × 3 × 7입니다. 1부터 100 사이의 모든 소수를 생성하면 25개를 확인할 수 있습니다.

자주 묻는 질문

아주 큰 수를 판정하는 데 얼마나 걸리나요?
일반적인 입력은 10밀리초를 한참 밑돕니다. 결정적 witness가 붙은 밀러-라빈은 대략 O(log³ n)의 모듈러 거듭제곱이 필요하므로, 수십 자리 수라도 곱셈 수십 번 수준에서 끝납니다. 12자리 수든 암호 규모의 소수든 UI는 체감상 즉시 결과가 나옵니다.
소인수분해는 항상 유일한가요?
유일합니다. 산술의 기본 정리에 따라, 1보다 큰 모든 정수는 순서를 빼면 정확히 한 가지 소인수분해를 가집니다. 도구는 인수를 오름차순으로 정렬하고 중복은 지수로 묶어 표시하므로(84 = 2² × 3 × 7) 교과서와 같은 표기가 됩니다.
최대로 검사할 수 있는 수는 얼마인가요?
고정된 상한은 없습니다. JavaScript 안전 정수 범위에 드는 수는 더 빠른 시행 나눗셈 경로를 쓰고, 더 큰 입력은 BigInt 밀러-라빈 테스트가 처리합니다. 이 테스트는 3.3 × 10^24 미만의 모든 수에 대해 정확함이 증명되어 있고, 그 범위를 한참 넘어서도 매우 강력한 확률적 소수 판정으로 작동하므로 암호 규모의 소수도 무리 없이 검사합니다.
왜 0과 1은 소수에 포함되지 않나요?
소수는 "1과 자기 자신, 정확히 두 개의 양의 약수를 갖는 양의 정수"로 정의됩니다. 1의 양의 약수는 자기 자신 하나뿐이라 조건을 만족하지 못하고, 0은 약수가 무한히 많습니다. 둘을 제외해야 인수 분해의 유일성이 예외 없이 성립합니다.
소수는 실제 암호학에서 어떻게 쓰이나요?
RSA는 약 1024비트짜리 소수 두 개를 골라 곱한 값을 공개키의 일부로 발표합니다. 그 곱을 다시 두 소수로 분해하기 어려운 것이 RSA의 안전성을 떠받칩니다. 같은 크기에서도 소수 판정은 빠르기 때문에, 키 생성은 병목이 되지 않습니다.

관련 도구