2020年6月1日月曜日

学習環境

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



    1. y = x 2 - 4 x + 7 = x - 2 2 + 3

      よって

      x = 2

      のとき最小となり、 その値は3。


    2. y = - x + 3 2 + 14

      x が-3のとき最大値14。


    3. y = 4 x + 3 2 2

      よって

      x = - 3 2

      のとき最小値0。


    4. y = 3 4 x 2 + 8 x - 12 = 3 4 x + 4 2 - 24

      x が-4のとき最小値-24。


    5. y = - 3 2 x 2 - 4 3 x = - 3 2 x - 2 3 2 + 3 2 2 3 2 = - 3 2 x - 2 3 2 + 2 3

    6. y = 1 3 x - 3 2 - 1 2 x - 2 5 = - 1 6 x 2 - 3 2 + 2 5 x - 1 10 = - 1 6 x 2 - 19 10 x - 1 10 = - 1 6 x - 19 20 2 + 1 6 · 19 20 2 - 1 10 = - 1 6 x - 19 20 2 + 1 6 · 361 400 - 1 10 = - 1 6 x - 19 20 2 + 121 2400

    7. y = a x 2 - b a x = a x - b 2 a 2 - b 2 4 a

      よって

      x = - b 2 a

      のとき最小値

      - b 2 4 a

    8. y = a x 2 - x = a x - 1 2 2 - a 4

コード

#!/usr/bin/env python3
from sympy import symbols, plot, Rational

print('14.')
x = symbols('x')
ys = [x ** 2 - 4 * x + 7,
      4 * x ** 2 + 12 * x + 9,
      x * (4 - 3 * x) / 2]
ys0 = [3, 0, Rational(2, 3)]

p = plot(*ys, *ys0,
         (x, -10, 10),
         ylim=(-10, 10),
         legend=True,
         show=False)
colors = ['red', 'green', 'blue', 'brown', 'orange',
          'purple', 'pink', 'gray', 'skyblue', 'yellow']

for o, color in zip(p, colors):
    o.line_color = color

p.show()
p.save('sample14.png')

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

% ./sample14.py
14.
/opt/local/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/sympy/plotting/plot.py:1065: MatplotlibDeprecationWarning: 
The set_smart_bounds function was deprecated in Matplotlib 3.2 and will be removed two minor releases later.
  self.ax[i].spines['left'].set_smart_bounds(True)
/opt/local/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/sympy/plotting/plot.py:1066: MatplotlibDeprecationWarning: 
The set_smart_bounds function was deprecated in Matplotlib 3.2 and will be removed two minor releases later.
  self.ax[i].spines['bottom'].set_smart_bounds(False)
%

0 コメント:

コメントを投稿