2020年4月5日日曜日

学習環境

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


  1. 2桁の整数の十の位を a、一の位を b とする。

    10a+b

    問題の仮定より、

    {a+b=910b+a=4710a+b

    この連立2元1次方程式の解を求める。

    b=9-a109-a+a=4710a+9-a90-9a=367a+36710-a=47a+4770-7a=4a+411a=66a=6b=3

    よって求める整数は63。

コード

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

print('4.')


class Test(TestCase):
    def test(self):
        a, b = symbols('a, b', integer=True)
        self.assertEqual(solve([a + b - 9,
                                10 * b + a - 4 * (10 * a + b) / 7]),
                         {a: 6, b: 3})

    def test1(self):
        self.assertEqual(6 + 3, 9)
        self.assertEqual(36, 63 * 4 / 7)


if __name__ == "__main__":
    main()

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

% ./sample4.py -v
4.
test (__main__.Test) ... ok
test1 (__main__.Test) ... ok

----------------------------------------------------------------------
Ran 2 tests in 0.051s

OK
%

0 コメント:

コメントを投稿