소인수분해 계산기

확장됨
다음

2 이상의 양의 정수를 입력하면 소인수로 분해합니다. 반복되는 인수를 모두 나열한 식과 지수를 사용한 간단한 식을 함께 보여 줍니다. 단순한 시험 나눗셈을 사용하며, 모든 약수를 나열하거나 고급 인수분해 알고리즘을 사용하지는 않습니다.

소인수분해 과정

  1. 1

    정수 입력

    십진 숫자만 사용하여 2 이상의 값을 입력합니다.

  2. 2

    작은 인수로 나누기

    먼저 2를 시도한 뒤, 후보가 남은 값의 제곱근보다 크지 않은 동안 정수를 차례로 시도합니다.

  3. 3

    반복되는 인수 기록

    나누어떨어질 때마다 해당 인수를 기록하고 몫을 대상으로 계속 계산합니다.

  4. 4

    두 가지 형식 표시

    360의 펼친 식은 2 × 2 × 2 × 3 × 3 × 5이고, 간단한 식은 2^3 × 3^2 × 5입니다.

예시

입력 펼친 식 지수 표기
12 2 × 2 × 3 2^2 × 3
60 2 × 2 × 3 × 5 2^2 × 3 × 5
84 2 × 2 × 3 × 7 2^2 × 3 × 7
97 97 97
1024 2 × 2 × 2 × 2 × 2 × 2 × 2 × 2 × 2 × 2 2^10

입력 및 성능 제한

  • 빈 문자열, 부호, 소수점, 공백, 2보다 작은 값은 인수분해 결과를 만들지 않습니다. 음의 정수를 절댓값으로 바꾸지도 않습니다.
  • 계산에는 PHP 정수형을 사용합니다. 브라우저에서 나타내거나 표시할 수 있더라도 서버의 정수 범위를 벗어나는 값은 지원하지 않습니다.
  • 작은 인수가 없는 큰 입력에서는 시험 나눗셈이 느려질 수 있습니다. Pollard rho 같은 빠른 대체 알고리즘은 없습니다.
  • 출력에는 소인수만 포함됩니다. 전체 약수 목록은 계산하지 않습니다.

데이터 처리

기본 폼은 서버 컴포넌트이므로 입력한 숫자가 갱신될 때 서버로 전송됩니다. 2단계 보기에서는 결과 단계로 넘기기 위해 숫자가 페이지 URL에 들어갑니다. 입력을 비공개 정보나 비밀로 간주하지 마세요.

자주 묻는 질문

두 값 모두 이 계산기가 요구하는 소인수분해 결과가 없으므로 2 이상의 정수를 입력하라는 안내가 나옵니다.

아니요. 양의 절댓값을 직접 입력하세요. 이 계산기는 숫자로만 이루어진 2 이상의 입력을 받습니다.

두 출력 형식 모두에서 그 소수 자체가 유일한 인수로 표시됩니다.

서버의 PHP 정수형에 들어가는 값이어야 합니다. 시험 나눗셈에 많은 반복이 필요할 수 있어 실제 속도 한계는 그보다 훨씬 작을 수 있습니다.

관련 도구

이 도구는 다른 언어로도 제공됩니다