고차 다항식 인수분해

다항식 입력

예제 다항식:

입력 형식 설명:

지수 표기법: ^ 기호 사용 (예: x^2, x^3)
곱셈 표기법: * 기호 사용 (예: 2*x^2, -3*x)
덧셈과 뺄셈: +와 -를 사용하여 항 연결
상수항: 숫자를 직접 입력 (예: +6, -12)

인수분해 결과

다항식을 입력하고 인수분해 시작을 클릭하세요

알고리즘 설명:

1. 유리근 정리:
정수 계수 다항식 a_n·x^n + ... + a_1·x + a_0에 대해 유리근 p/q (기약분수)가 존재하면:
  • p는 상수항 a_0의 약수
  • q는 최고차항 계수 a_n의 약수
  • 가능한 유리근: ±(p의 약수) / (q의 약수)
  • 예:x³ - 6x² + 11x - 6의 경우 가능한 유리근은 ±1, ±2, ±3, ±6
2. 조립제법:
근을 검증하고 다항식 나눗셈을 수행하는 데 사용:
  • r이 다항식 P(x)의 근이면 P(x) = (x - r)·Q(x)
  • 조립제법은 몫 다항식 Q(x)를 빠르게 찾습니다
  • Q(x)를 더 이상 인수분해할 수 없을 때까지 계속 진행
3. 수치적 근 찾기 방법:
유리근 정리가 정수근을 찾지 못할 경우 수치적 방법 사용:
  • 뉴턴 반복법:x_{n+1} = x_n - f(x_n)/f'(x_n)
  • 실근(무리수일 수 있음)을 찾는 데 사용
  • 복소근의 경우 실수부와 허수부 표시
  • 예:x^2 - 2 = (x - sqrt(2))(x + sqrt(2))
4. 특수 형태 인식:
  • 제곱의 차:a^2 - b^2 = (a + b)(a - b)
  • 완전 제곱:a^2 +/- 2ab + b^2 = (a +/- b)^2
  • 세제곱의 차/합:a^3 +/- b^3 = (a +/- b)(a^2 -/+ ab + b^2)
  • 공통 인수 추출:예: x³ + 2x² = x²(x + 2)

알고리즘 복잡도:

  • 유리근 탐색:O(d·n), d는 가능한 근의 수, n은 다항식 차수
  • 조립제법:나눗셈당 O(n)
  • 수치적 근 찾기:O(k·n), k는 반복 횟수

참고:

  • 정수 계수를 가진 다항식만 지원
  • 고차 다항식(5차 이상)의 경우 유리근으로 완전한 인수분해가 불가능할 수 있음
  • 수치적 해법은 반올림 오차가 있을 수 있으며 근사값으로 표시됨
  • 복소근은 a + bi 형태로 표시됨
  • 기약 다항식은 원래 형태로 표시됨