2019年12月16日月曜日

学習環境

代数への出発 (新装版 数学入門シリーズ) (松坂 和夫(著)、岩波書店)の第2章(整式の計算)、練習問題の問9の解答を求めてみる。


  1. 余りの次数が1、商の次数が2なので、整式 P の 次数は2である。

    そこで、

    P=ax2+bx+c

    とおくと、

    P3x2+x+3+3x-1=ax2+bx+c3x2+x+3+3x-1=3ax4+a+3bx3+3a+b+3cx2+3b+c+3x+3c-1

    よって、 連立方程式

    3a=6a+3b=-73a+b+3c=93b+c+3=-43c-1=5

    の解と求めれ ばいい。

    a=2b=-3c=2

    ゆえに、求める整式 P は、

    P=2x2-3x+2

コード

#!/usr/bin/env python3
from unittest import TestCase, main
from sympy import symbols, solve

print('9.')

x = symbols('x', real=True)


class MyTest(TestCase):
    def test1(self):
        num = 6 * x ** 4 - 7 * x ** 3 + 9 * x ** 2 - 4 * x + 5
        a, b, c = symbols('a, b, c', real=True)
        s = solve(num - ((a * x ** 2 + b * x + c) *
                         (3 * x ** 2 + x + 3) + 3 * x - 1), a, b, c, dict=True)
        self.assertEqual(len(s), 1)
        self.assertEqual(s[0][a], 2)
        self.assertEqual(s[0][b], -3)
        self.assertEqual(s[0][c], 2)


if __name__ == '__main__':
    main()

入出力結果(Zsh、cmd.exe(コマンドプロンプト)、Terminal、Jupyter(IPython))

% ./sample9.py -v
9.
test1 (__main__.MyTest) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.046s

OK
%

0 コメント:

コメントを投稿