2019年11月16日土曜日

学習環境

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



    1. a+2b3=a3+3·a2·2b+3a·4b2+8b3=a3+6a2b+12ab2+8b3

    2. 3x-2y3=27x3-3·9x2·2y+3·3x·4y2-8y3=27x3-54x2y+36xy2-8y3

    3. x+2x2-2x+4=x3+8

    4. xy-1x2y2+xy+1=x3y3-1

    5. x-1xx2+1+1x2=x3-1x3

コード

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

print('14.')


class MyTest(TestCase):

    def test(self):
        x, y = symbols('x, y')
        spam = [(x + 2 * y) ** 3,
                (3 * x - 2 * y) ** 3,
                (x + 2) * (x ** 2 - 2 * x + 4),
                (x * y - 1) * (x ** 2 * y ** 2 + x * y + 1),
                (x - 1 / x) * (x ** 2 + 1 + 1 / x ** 2)]
        egg = [x ** 3 + 6 * x ** 2 * y + 12 * x * y ** 2 + 8 * y ** 3,
               27 * x ** 3 - 54 * x ** 2 * y + 36 * x * y ** 2 - 8 * y ** 3,
               x ** 3 + 8,
               x ** 3 * y ** 3 - 1,
               x ** 3 - 1 / x ** 3]
        for s, t in zip(spam, egg):
            self.assertEqual(s.expand(), t.expand())


if __name__ == '__main__':
    main()

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

% ./sample14.py -v
14.
test (__main__.MyTest) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.021s

OK
%

0 コメント:

コメントを投稿