2020年4月16日木曜日

学習環境

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


  1. ある長方形の地面の縦の長さを a、横の長さを b とする。

    問題の仮定より、

    a > 5 , b > 0 { a - 2 b + 3 = a b a - 5 b + 9 = 3 4 a b

    この 連立方程式の解を求める。

    a b + 3 a - 2 b - 6 = a b 3 a - 2 b = 6 b = 3 a - 6 2 a - 5 3 a - 6 2 + 9 = 3 4 a · 3 a - 6 2 a - 5 a - 2 + 6 = 3 a a - 2 4 4 a - 5 a + 4 = 3 a 2 - 6 a a 2 + 2 a - 80 = 0 a + 10 a - 8 = 0 a = 8 b = 9

    よって、縦の長さは8 m、横の長さは9 m である。

コード

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

print('12.')

width, height = symbols('a, b', positive=True)


class TestRightTriangleSides(TestCase):
    def test(self):
        s = solve([(width + 3) * (height - 2) - width * height,
                   (width + 9) * (height - 5) - 3 * width * height / 4])
        self.assertEqual(s, [{width: 9, height: 8}])


if __name__ == "__main__":
    main()

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

% ./sample12.py -v
12.
test (__main__.TestRightTriangleSides) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.331s

OK
%

0 コメント:

コメントを投稿