2019年12月2日月曜日

学習環境

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



    1. A-B-C=5x2-6xy+2y2

    2. 4A-3B+2C=4-9-14x2+-4-15xy+8+12+8y2=-19x2-19xy+28y2

    3. 2A-3C-B=2A+3B-3C=2+9+21x2+-2+15xy+4-12-12y2=32x2+13xy-20y2

コード

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

print('1.')

x, y = symbols('x, y')
A = x ** 2 - x * y + 2 * y ** 2
B = 3 * x ** 2 + 5 * x * y - 4 * y ** 2
C = -7 * x ** 2 + 4 * y ** 2


class MyTest(TestCase):
    def test(self):
        spam = [A - B - C,
                4 * A - 3 * B + 2 * C,
                2 * A - 3 * (C - B)]
        egg = [(5, -6, 2),
               (-19, -19, 28),
               (32, 13, -20)]
        for s, (a, b, c) in zip(spam, egg):
            self.assertEqual(s, a * x ** 2 + b * x * y + c * y ** 2)


if __name__ == '__main__':
    main()

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

% ./sample1.py -v
1.
test (__main__.MyTest) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.005s

OK
%

0 コメント:

コメントを投稿