2019年1月8日火曜日

学習環境

数学読本〈1〉数・式の計算/方程式/不等式 (松坂 和夫(著)、岩波書店)の第3章(数学の威力を発揮する - 方程式)、3.4(等式の証明)、整式の恒等式の問43の解答を求めてみる。



    1. 両辺の分母をはらったあと連立方程式を解く。

      x + 5 x - 2 3 x + 1 = a 3 x + 1 + b x - 2 x - 2 3 x + 1 x + 5 = 3 x + b x + a - 2 b 3 a + b = 1 a - 2 b = 5 7 a = 7 a = 1 b = - 2

    2. 3 x + 2 x x 2 + 2 = a x 2 + 2 + b x + c x x x 2 + 2 a + b = 0 c = 3 2 a = 2 a = 1 b = - 1

    3. 右辺について。

      x - 1 x - 2 x + 3 + a x - 2 x + 3 + b x - 1 x + 3 + c x - 1 x - 2 x - 1 x - 2 x + 3

      よって、

      x 3 + 6 x - 15 = x - 1 x - 2 x + 3 + a x - 2 x + 3 + b x - 1 x + 3 + c x - 1 x - 2

      x に1、2、-3を代入。

      1 + 6 - 15 = - 4 a - 4 a = - 8 a = 2 5 b = 8 + 12 - 15 b = 1 20 c = - 27 - 18 - 15 c = - 3

    4. 右辺について。

      a x - 1 2 + b x x - 1 + c x x x - 1 2

      よって、

      2 x + 3 = a x - 1 2 + b x x - 1 + c x x = 1 c = 5 a + b = 0 a = 3 b = - 3

    5. 右辺について。

      a x + 1 x 2 + 1 + b x - 1 x 2 + 1 + c x + d x - 1 x + 1 x x 2 + 1

      よって、

      1 = a x + 1 x 2 + 1 + b x - 1 x 2 + 1 + c x + d x - 1 x + 1 x = 1 4 a = 1 a = 1 4 x = - 1 - 4 b = 1 b = - 1 4 c = 0 1 4 + 1 4 - d = 1 d = - 1 2

    6. a x 2 + 1 2 + b x + c x x 2 + 1 + dx + e x x x 2 + 1 2

      よって、

      a x 2 + 1 2 + b x + c x x 2 + 1 + dx + e x = 1 a + b = 0 c = 0 2 a + b + d = 0 e = 0 a = 1 b = - 1 2 - 1 + d = 0 d = - 1

コード

Python 3

#!/usr/bin/env python3
from sympy import pprint, symbols, solve
from sympy.plotting import plot3d

print('41.')

a, b, c, d, e, x = symbols('a, b, c, d, e, x')

ts = [((x + 5) / (3 * x ** 2 - 5 * x - 2),
       a / (x - 2) + b / (3 * x + 1)),
      ((3 * x + 2) / (x * (x ** 2 + 2)),
       a / x + (b * x + c) / (x ** 2 + 2)),
      ((x ** 3 + 6 * x - 15) / ((x - 1) * (x - 2) * (x + 3)),
       1 + a / (x - 1) + b / (x - 2) + c / (x + 3)),
      ((2 * x + 3) / (x * (x - 1) ** 2),
       a / x + b / (x - 1) + c / (x - 1) ** 2),
      (1 / (x ** 4 - 1),
       a / (x - 1) + b / (x + 1) + (c * x + d) / (x ** 2 + 1)),
      (1 / (x * (x ** 2 + 1) ** 2),
       a / x + (b * x + c) / (x ** 2 + 1) + (d * x + e) / (x ** 2 + 1) ** 2)]


for i, (l, r) in enumerate(ts, 1):
    print(f'({i})')
    pprint(solve(l - r, a, b, c, d, e))
    print()

入出力結果(Terminal, cmd(コマンドプロンプト), Jupyter(IPython))

$ ./sample43.py
41.
(1)
{a: 1, b: -2}

(2)
{a: 1, b: -1, c: 3}

(3)
{a: 2, b: 1, c: -3}

(4)
{a: 3, b: -3, c: 5}

(5)
{a: 1/4, b: -1/4, c: 0, d: -1/2}

(6)
{a: 1, b: -1, c: 0, d: -1, e: 0}

$

0 コメント:

コメントを投稿