2019年12月8日日曜日

学習環境

新装版 数学読本2 (松坂 和夫(著)、岩波書店)の第8章(円の中にひそむ関数 - 三角関数)、8.2(加法定理)、三角関数の諸公式の問36の解答を求めてみる。



    1. sin 7 0 ∘ - sin 5 0 ∘ = sin 6 0 ∘ + 1 0 ∘ - sin 6 0 ∘ - 1 0 ∘ = sin 6 0 ∘ cos 1 0 ∘ + cos 6 0 ∘ sin 1 0 ∘ - sin 6 0 ∘ cos 1 0 ∘ - cos 6 0 ∘ sin 1 0 ∘ = 2 cos 6 0 ∘ sin 1 0 ∘ = 2 · 1 2 sin 1 0 ∘ = sin 1 0 ∘

    2. cos 7 0 ∘ + cos 5 0 ∘ = cos 6 0 ∘ + 1 0 ∘ + cos 6 0 ∘ - 1 0 ∘ = 2 · 1 2 cos 1 0 ∘ = cos 1 0 ∘

    3. sin 4 0 ∘ - sin 8 0 ∘ + sin 16 0 ∘ = sin 6 0 ∘ - 2 0 ∘ - sin 6 0 ∘ + 2 0 ∘ + sin 16 0 ∘ = - 2 cos 6 0 ∘ sin 2 0 ∘ + sin 16 0 ∘ = - sin 2 0 ∘ + sin 16 0 ∘ = - sin 9 0 ∘ - 7 0 ∘ + sin 9 0 ∘ + 7 0 ∘ = 2 cos 9 0 ∘ sin 7 0 ∘ = 0

コード

#!/usr/bin/env python3
from unittest import TestCase, main
from sympy import pprint, symbols, sin, cos, rad

print('36.')


class MyTestCase(TestCase):
    def test1(self):
        self.assertAlmostEqual(float(sin(rad(70)) - sin(rad(50))),
                               float(sin(rad(10))))

    def test2(self):
        self.assertAlmostEqual(float(cos(rad(70)) + cos(rad(50))),
                               float(cos(rad(10))))

    def test3(self):
        self.assertAlmostEqual(
            float(sin(rad(40)) - sin(rad(80)) + sin(rad(160))), 0)


if __name__ == '__main__':
    main()

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

% ./sample36.py -v
36.
test1 (__main__.MyTestCase) ... ok
test2 (__main__.MyTestCase) ... ok
test3 (__main__.MyTestCase) ... ok

----------------------------------------------------------------------
Ran 3 tests in 0.040s

OK
%

0 コメント:

コメントを投稿