三角法では、「特別な角度」と呼ばれる特定の角度があります。これは、これらの角度のいずれかのsin、cos、またはtanを取ると、有理数の平方根であるため、覚えやすい結果が得られるためです。これらの特別な角度は常にpi/6
、またはの倍数ですpi/4
。以下は、すべての特別な角度とそれに対応するトリガー値の視覚化です。
ご覧のとおり、角度ごとに対応する数値のペアです。最初の数値はその角度の余弦で、2番目の数値はその角度の正弦です。これらの角度の1つの接線を見つけるには、sinをcosで割ります。たとえば、次tan(pi/6)
と等しい
sin(pi/6) / cos(pi/6) ==
(1/2) / (√3/2) ==
1/√3 ==
√3/3
チャレンジ
3つの入力を受け取る完全なプログラムを作成する必要があります。
計算することになっているトリガー関数を表す単一の文字。これは、 's'(sin)、 'c'(cos)、または 't'(tan)のいずれかになります。
入力角度の分子。これは任意の正の整数です。5の入力は、分子が5 * piであることを意味することに注意してください。
入力角度の分母。これは常に次のいずれかになります。
1, 2, 3, 4, 6
次に、その角度のトリガー関数の正確な値を出力します。以下は、2 * piまでのすべての角度のsin、cos、tanのリストです。
sin(0pi): 0
sin(pi/6): 1/2
sin(pi/4): root(2)/2
sin(pi/3): root(3)/2
sin(pi/2): 1
sin(2pi/3): root(3)/2
sin(3pi/4): root(2)/2
sin(5pi/6): 1/2
sin(1pi): 0
sin(7pi/6): -1/2
sin(5pi/4): -root(2)/2
sin(4pi/3): -root(3)/2
sin(3pi/2): -1
sin(5pi/3): -root(3)/2
sin(7pi/4): -root(2)/2
sin(11pi/6): -1/2
sin(2pi): 0
cos(0pi): 1
cos(pi/6): root(3)/2
cos(pi/4): root(2)/2
cos(pi/3): 1/2
cos(pi/2): 0
cos(2pi/3): -1/2
cos(3pi/4): -root(2)/2
cos(5pi/6): -root(3)/2
cos(1pi): -1
cos(7pi/6): -root(3)/2
cos(5pi/4): -root(2)/2
cos(4pi/3): -1/2
cos(3pi/2): 0
cos(5pi/3): 1/2
cos(7pi/4): root(2)/2
cos(11pi/6): root(3)/2
cos(2pi): 1
tan(0pi): 0
tan(pi/6): root(3)/3
tan(pi/4): 1
tan(pi/3): root(3)
tan(pi/2): nan
tan(2pi/3): -root(3)
tan(3pi/4): -1
tan(5pi/6): -root(3)/3
tan(1pi): 0
tan(7pi/6): root(3)/3
tan(5pi/4): 1
tan(4pi/3): root(3)
tan(3pi/2): nan
tan(5pi/3): -root(3)
tan(7pi/4): -1
tan(11pi/6): -root(3)/3
tan(2pi): 0
2piより大きい数値を取得した場合は、範囲内の数値が得られるまで、2piを引きます。たとえば、== 1/2 sin(17pi/6)
と同じsin(5pi/6)
です。たとえば、入力が== 0 cos(2pi/4)
と同じである場合、プログラムは基本的な単純化を行うことが期待されていますcos(pi/2)
。組み込みの三角関数は許可されていません。
バイト単位の最短の答えが勝ちます!