2019年9月16日月曜日

学習環境

新装版 数学読本2 (松坂 和夫(著)、岩波書店)の第7章(急速・緩慢に変化する関係 - 指数関数・対数関数)、7.3(対数関数の性質)、対数に関する基本的な等式の問18の解答を求めてみる。



    1. log a L M 2 = log a L + 2 log a M = u + 2 v

    2. log a M 2 L 3 = 2 log a M - 3 log a L = - 3 u + 2 v

    3. log a L 2 M N 3 = 2 log a L + log a M - 3 log a N = 2 u + v - 3 w

    4. log a M 2 N 3 = 1 3 2 log a M - log a N = 1 3 2 v - w

    5. log a L M N = log a L + 1 2 log a M + log a N = u + 1 2 v + w

    6. log a L 4 M N 3 = 4 log a L - 1 2 log a M + 3 log a N = 4 u - 1 2 v + 3 w

コード

Python 3

#!/usr/bin/env python3
from sympy import pprint, symbols, log, root, sqrt
from unittest import TestCase, main

print('18.')


class MyTestCase(TestCase):
    def setUp(self):
        pass

    def tearDown(self):
        pass

    def test(self):
        a = 2
        L = 5
        M = 6
        N = 7
        u = log(L, a)
        v = log(M, a)
        w = log(N, a)
        spam = [log(L * M ** 2, a),
                log(M ** 2 / L ** 3, a),
                log(L ** 2 * M / N ** 3, a),
                log(root(M ** 2 / N, 3), a),
                log(L * sqrt(M * N), a),
                log(L ** 4 / sqrt(M * N ** 3), a)]
        egg = [u + 2 * v,
               -3 * u + 2 * v,
               2 * u + v - 3 * w,
               (2 * v - w) / 3,
               u + (v + w) / 2,
               4 * u - (v + 3 * w) / 2]
        for i, (s, t) in enumerate(zip(spam, egg)):
            self.assertAlmostEqual(float(s), float(t))


if __name__ == '__main__':
    main()

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

C:\Users\...>py sample18.py
18.
.
----------------------------------------------------------------------
Ran 1 test in 0.024s

OK

C:\Users\...>

0 コメント:

コメントを投稿