cos
関数や sin
関数の引数の単位は「度」ではなくラジアンです。入力が度で与えられたら、2πラジアン = 360度
より、度からラジアンに変換する必要があります。
cos(π) = -1
すなわち π = arccos(-1)
であることから、逆余弦 acos
関数に -1
を与えることで PI
(円周率)を求めることができます。
次のプログラムは、三角関数を用いて与えられた角度の正弦、余弦を求めます。
Scanner sc = new Scanner(System.in); int deg; double rad; double PI = Math.acos(-1); // PI = 3.141593... deg = sc.nextInt(); rad = deg * PI / 180; System.out.printf("%d degree = %f radian\n", deg, rad); System.out.printf("cos(%d) = %f, sin(%d) = %f\n", deg, Math.cos(rad), deg, Math.sin(rad));
以下は、入力の例とその値に対する出力です。
入力 | 出力 |
---|---|
180 | 180 degree = 3.141593 radian cos(180) = -1.000000, sin(180) = 0.000000 |
60 | 60 degree = 1.047198 radian cos(60) = -0.500000, sin(60) = 0.866025 |
オンラインジャッジではじめるC/C++プログラミング入門 (マイナビ)AIZU ONLINE JUDGE のコース問題を題材にした解説書です。各トピックごとに C/C++ 言語の基礎的な内容を学習し、Introduction to Programming の演習問題にチャレンジしていきます。内容は敷居の高いものではなく、プログラミング初学者が取り組む例題からスタートしています。 |