Python에서 한 다항식을 다른 다항식과 곱하려면 numpy.polynomial.polynomial.polymul() 메서드를 사용하면 됩니다. 이 메서드는 두 다항식 c1과 c2의 곱을 반환합니다. 인자는 최저 차수 항부터 최고 차수 항까지의 계수 시퀀스로 전달되며, 예를 들어 [1, 2, 3]은 다항식 1 + 2*x + 3*x**2를 의미합니다.
메서드는 두 다항식의 곱을 나타내는 계수 배열을 반환합니다. 매개변수 c1과 c2는 '표준(standard)' 기저를 기준으로 하는 다항식을 나타내는 1차원 계수 배열이며, 반드시 최저 차수 항부터 최고 차수 항 순으로 정렬되어 있어야 합니다.
numpy.polynomial.polynomial 모듈은 다항식을 다루는 데 유용한 다양한 객체를 제공합니다. 특히 일반적인 산술 연산을 캡슐화한 Polynomial 클래스가 포함되어 있어 덧셈, 뺄셈, 곱셈 같은 다항식 연산을 손쉽게 처리할 수 있습니다.
다항식 곱하기 단계
1단계: 필요한 라이브러리 임포트
먼저 다항식 모듈을 임포트합니다.
from numpy.polynomial import polynomial as P
2단계: 두 개의 다항식 선언
곱할 두 다항식을 튜플 형태로 선언합니다.
p1 = (4, 1, 6) p2 = (2, 5, 3)
여기서 p1은 4 + x + 6x², p2는 2 + 5x + 3x²를 나타냅니다.
3단계: 다항식 출력하기
print("Polynomial 1...\n", p1)
print("\nPolynomial 2...\n", p2)4단계: polymul() 메서드로 곱셈 수행
numpy.polynomial.polynomial.polymul() 메서드를 호출하여 두 다항식을 곱합니다.
mulRes = P.polymul(p1, p2)
print("\nResult (Multiply)...\n", mulRes)전체 예제 코드
from numpy.polynomial import polynomial as P
# 두 개의 다항식 선언
p1 = (4, 1, 6)
p2 = (2, 5, 3)
# 다항식 출력
print("Polynomial 1...\n", p1)
print("\nPolynomial 2...\n", p2)
# numpy.polynomial.polynomial.polymul() 메서드로 두 다항식의 곱 계산
mulRes = P.polymul(p1, p2)
print("\nResult (Multiply)...\n", mulRes)실행 결과
Polynomial 1... (4, 1, 6) Polynomial 2... (2, 5, 3) Result (Multiply)... [ 8. 22. 29. 33. 18.]
결과 해석
출력된 결과 [8, 22, 29, 33, 18]은 다음 다항식을 나타냅니다.
(4 + x + 6x²) × (2 + 5x + 3x²) = 8 + 22x + 29x² + 33x³ + 18x⁴
즉, 2차 다항식 두 개를 곱했기 때문에 결과는 4차 다항식이 되며, 계수 배열의 길이도 5개로 늘어난 것을 확인할 수 있습니다. polymul() 메서드는 부동소수점(float) 타입의 배열을 반환한다는 점도 참고하세요.