Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python에서 두 다항식의 곱 구하기 – numpy polymul() 메서드 활용법

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) 타입의 배열을 반환한다는 점도 참고하세요.