2020年5月21日木曜日

学習環境

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


  1. 問題の直方体の3辺の長さを

    x , 3 2 x , 2 x cm

    とすると、

    x + 1 3 2 x + 1 2 x + 1 = 315 x + 1 3 x + 2 2 x + 1 = 630 3 x 2 + 5 x + 2 2 x + 1 = 630 6 x 3 + 13 x 2 + 9 x - 628 = 0 384 + 208 + 36 - 628 = 0 x - 4 6 x 2 + 37 x + 157 = 0 x 2 + 37 x + 151 = 0 D = 3 7 2 - 4 · 6 · 157 < 0

    よって、 求める直方体の3辺の長さは

    4 cm , 6 cm , 8 cm

コード

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

print('15.')


class TestCuboidVolume(TestCase):
    def test(self):
        x = symbols('x')
        xs = [x0 for x0 in solve(
            (x + 1) * (3 * x / 2 + 1) * (2 * x + 1) - 315) if x0.is_positive]
        self.assertEqual(xs, [4])


if __name__ == "__main__":
    main()

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

% ./sample15.py -v
15.
test (__main__.TestCuboidVolume) ... ok

----------------------------------------------------------------------
Ran 1 test in 0.072s

OK
%

0 コメント:

コメントを投稿