三角関数

cos 関数や sin 関数の引数の単位は「度」ではなく「ラジアン」です。入力が「度」で与えられたら、「度」から「ラジアン」に変換する必要があります。

math モジュールに用意されている radians 関数を使うことで、「度」から「ラジアン」に変換することができます。

math.radians(度)

また、math モジュールに用意されている degree 関数を使うことで、「ラジアン」から「度」に変換することができます。

math.degree(ラジアン)

次のプログラムでは、与えられた角度の正弦、余弦を求めています。

import math

deg = int(input())
rad = math.radians(deg)

print("{0} degree = {1:.5f} radian".format(deg, rad))
print("cos({0}) = {1:.5f}".format(deg, math.cos(rad)))
print("sin({0}) = {1:.5f}".format(deg, math.sin(rad)))

# 標準入力が 180 の場合
# 180 degree = 3.14159 radian
# cos(180) = -1.00000
# sin(180) = 0.00000

# 標準入力が 60 の場合
# 60 degree = 1.04720 radian
# cos(60) = 0.50000
# sin(60) = 0.86603

Reference

 

オンラインジャッジではじめるC/C++プログラミング入門 (マイナビ)

AIZU ONLINE JUDGE のコース問題を題材にした解説書です。各トピックごとに C/C++ 言語の基礎的な内容を学習し、Introduction to Programming の演習問題にチャレンジしていきます。内容は敷居の高いものではなく、プログラミング初学者が取り組む例題からスタートしています。