2019年4月15日月曜日

学習環境

解析入門 原書第3版 (S.ラング(著)、松坂 和夫(翻訳)、片山 孝次(翻訳)、岩波書店)の第4部(級数)、第14章(テイラーの公式)、5(対数関数)の練習問題2の解答を求めてみる。



    1. - 7 log 9 10 + 2 log 24 25 + 3 log 81 80 = log 10 9 7 · 24 25 2 · 81 80 3 = log 1 0 7 · 2 4 2 · 8 1 3 9 7 · 2 5 2 · 8 0 3 = log 1 0 4 · 2 4 2 9 · 2 5 2 · 8 3 = log 2 4 · 5 4 · 2 6 · 3 2 3 2 · 5 4 · 2 9 = log 2 - 11 log 9 10 + 3 log 24 25 + 5 log 81 80 = log 2 11 · 5 11 3 22 · 2 9 · 3 3 5 6 · 3 20 2 20 · 5 5 = log 3

    2. log 9 10 = log 1 - 1 0 - 1 = - 1 0 - 1 - 1 2 1 0 - 2 + 1 3 - 1 0 - 1 3 - 1 4 - 1 0 - 1 4 + R 5 R 5 1 0 - 5 5 · 0.9 < 1 0 - 5 log 24 25 = log 1 - 1 25 = log 1 - 4 · 1 0 - 2 = - 4 · 1 0 - 2 - 1 2 - 4 · 1 0 - 2 2 + 1 3 - 4 · 1 0 - 2 3 + R 4 R 4 4 · 1 0 - 2 4 4 · 0.996 < 1 0 - 5 log 81 80 = log 1 + 1 80 = 1 80 - 1 2 1 80 2 + R 3 R 3 1 3 · 1 80 3 = 1 3 · 512000 < 1 0 - 5

      より、求める対数の小数第5位までの値を計算して求める。

      log 2 - 7 1 0 - 1 - 1 2 · 1 0 - 2 - 1 3 · 1 0 - 3 - 1 4 1 0 - 4 + 2 - 4 · 1 0 - 2 - 1 2 4 · 1 0 - 2 2 - 1 3 4 · 1 0 - 2 3 + 3 1 80 - 1 2 1 80 2

      log 3 も同様に計算。

コード

Python 3

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

print('2.')


a = -10 ** -1 - Rational(1, 2) * 10 ** -2 + Rational(1, 3) * \
    (-10 ** -1) ** 3 - Rational(1, 4) * (-10 ** -1) ** 4
b = -4 * 10 ** -2 - Rational(1, 2) * (-4 * 10 ** -2) ** 2 + \
    Rational(1, 3) * (-4 * 10 ** -2) ** 3
c = Rational(1, 80) - Rational(1, 2) * Rational(1, 80) ** 2

log2 = -7 * a + 2 * b + 3 * c
log3 = -11 * a + 3 * b + 5 * c

for o in [a, b, c,
          log(2), float(log(2)), log2, log(3), float(log(3)), log3]:
    pprint(o)
    print()

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

C:\Users\...>py sample2.py
2.
-0.105358333333333

-0.0408213333333333

 159 
─────
12800

log(2)

0.6931471805599453

0.693131291666667

log(3)

1.0986122886681098

1.09858704166667


C:\Users\...>

0 コメント:

コメントを投稿