2020年2月8日土曜日

学習環境

代数への出発 (新装版 数学入門シリーズ) (松坂 和夫(著)、岩波書店)の第4章(1次方程式, 2次方程式 )、2(2次方程式)の問9の解答を求めてみる。



    1. x + 4 x + 5 = 0 x = - 5 , - 4

    2. x 2 - 4 x - 12 = 0 x - 6 x + 2 = 0 x = - 2 , 6

    3. x 2 + 3 x = 0 x x + 3 = 0 x = - 3 , 0

    4. 2 x + 15 2 x - 15 = 0 x = ± 15 2

    5. 4 x 2 - 12 x + 9 = 0 2 x - 3 2 = 0 x = 3 2

    6. 2 x - 5 7 x + 2 = 0 x = - 2 7 , 5 2

    7. x 2 - 9 x + 20 = 3 x 2 - 9 x + 6 - 4 2 x 2 - 18 = 0 x 2 - 9 = 0 x = ± 3

    8. x - 11 a x + 4 a = 0 x = - 4 a , 12 a

    9. x + 2 a 2 = 0 x = - 2 a

    10. x 2 - 2 b x - a + b a - b = 0 x - a + b x + a - b = 0 x = ± a - b

コード

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

print('9.')


class MyTestCase(TestCase):
    def test(self):
        x, a, b = symbols('x, a, b', real=True)
        eqs = [x ** 2 + 9 * x + 20,
               x ** 2 - 4 * (x + 3),
               -x ** 2 - 3 * x,
               4 * x ** 2 - 25,
               4 * x ** 2 - 12 * x + 9,
               14 * x ** 2 - 31 * x - 10,
               (x - 4) * (x - 5) - (3 * (x - 1) * (x - 2) - 4),
               x ** 2 - 7 * a * x - 44 * a * 2,
               x ** 2 + 4 * a * x + 4 * a ** 2,
               x ** 2 - 2 * b * x - (a ** 2 - b ** 2)]
        egg = [{-5, -4},
               {-2, 6},
               {-3, 0},
               {-Rational(15, 2), Rational(15, 2)},
               {Rational(3, 2)},
               {-Rational(2, 7), Rational(5, 2)},
               {-3, 3},
               {-4 * a, 12 * a},
               {-2 * a},
               {a - b, -a - b}]
        for eq, s in zip(eqs, egg):
            self.assertTrue(solveset(eq, x), s)


if __name__ == "__main__":
    main()

入出力結果(Zsh、PowerShell、Terminal、Jupyter(IPython))

% ./sample9.py -v
9.
test (__main__.MyTestCase) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.295s

OK
%

0 コメント:

コメントを投稿