-
다항식의 정리(단항식과 다항식 간 곱셈, 나눗셈)수학과 알고리즘/중등 수학 2025. 1. 21. 22:34
들어가며
지난 시간에 다항식의 정리에 대해서 이야기하면서 다항식끼리의 덧셈과 뺄셈에 대해서 언급했습니다.
숫자만 빼고 더할 수 있다고 생각할 수 있지만, 다항식끼리도 덧셈, 뺄셈이 가능했듯이
다항식과 단항식끼리도 곱셈과 나눗셈이 가능합니다.
오늘은 다항식끼리의 정리 2탄으로, 다항식이 들어간 곱셈과 나눗셈에 대해서 알아보도록 하겠습니다.
1. (단항식)$\times$(다항식)
단항식과 다항식의 곱셈은 단항식을 다항식에 곱해주면 됩니다.
대신, 곱하는 과정에서 한번만 곱하는 게 아니라, 각각의 항에 곱하는 것이 중요합니다.예시: $3x \times (2x^2 + 4x - 5)$
- $3x$를 다항식 $2x^2 + 4x - 5$의 각 항에 곱함.
- 계산:
- $3x \times 2x^2 = 6x^3$
- $3x \times 4x = 12x^2$
- $3x \times (-5) = -15x$
- 결과: $6x^3 + 12x^2 - 15x$
2. (다항식)$\div$(단항식)
다항식을 단항식으로 나누는 방법은 곱셈과 반대로 진행하면 됩니다.
곱셈과 마찬가지로 각각의 항을 단항식으로 나누고, 이것을 정리하면 되겠습니다.예제: $(6x^3 + 12x^2 - 15x) \div 3x$
- 다항식의 각 항을 $3x$로 나눔.
- 계산:
- $\frac{6x^3}{3x} = 2x^2$
- $\frac{12x^2}{3x} = 4x$
- $\frac{-15x}{3x} = -5$
- 결과: $2x^2 + 4x - 5$
3. 파이썬으로 구현하기
만약, 이것을 코드로 구현하고 싶다면 sympy라는 라이브러리를 사용하면 됩니다.
sympy는 방정식을 풀 때 주로 사용하는 파이썬 외장 라이브러리입니다.
혹시 설치가 안되어 있으신 분은 터미널에서 pip install sympy를 입력 후 실행시키시거나,
주피터 노트북에서 !pip install sympy를 입력, 실행시켜 설치해주세요.from sympy import symbols, expand, simplify #각각 다항식 기호, 곱셈, 나눗셈 기능 불러오기 def multiply_polynomial(monomial, polynomial): #다항식 곱셈 구현 return expand(monomial * polynomial) def divide_polynomial(polynomial, monomial): #다항식 나눗셈 구현 return simplify(polynomial / monomial) # 변수 정의 x = symbols('x') # 예제 1: 단항식 * 다항식 monomial = 3 * x polynomial = 2 * x**2 + 4 * x - 5 result_multiply = multiply_polynomial(monomial, polynomial) print("단항식 * 다항식:", result_multiply) # 예제 2: 다항식 / 단항식 result_divide = divide_polynomial(polynomial, monomial) print("다항식 / 단항식 :", result_divide)
출력 결과
단항식 * 다항식: 6*x**3 + 12*x**2 - 15*x 다항식 / 단항식: (2*x**2 + 4*x - 5)/(3*x)
4. 정리
- 단항식과 다항식의 곱셈은 각 항에 곱하는 분배법칙을 사용한다
- 다항식과 단항식의 나눗셈은 각 항을 단항식으로 나눠 계산한다
지난 포스팅에는 쓰지 않았던 sympy라는 라이브러리를 활용해서 코드를 작성해봤습니다.
사실 수식이 복잡해질수록 sympy로 구현이 까다롭기 때문에 그렇게 권장하고 싶지는 않습니다.
하지만 코드로 이런 다항식 연산 결과를 구현할 수 있다면, 처음 해보는 연산이나 복잡한 연산을 계산하는 공부를 하면서 많은 도움이 될 거라고 생각합니다. 중요한 건 정답보다는 과정을 이해하는 과정이니까요.오늘도 읽어주셔서 감사합니다.