高校数学10分プログラミング(数学Ⅱ編 3.三角関数)10日目「2倍角の公式を確かめる」解説
マガジンリスト > 数学Ⅱ編 3.三角関数 > 10日目 解説
本日の課題、おつかれさまでした。
2倍角の公式を確かめるプログラムを作成することができたでしょうか。
解答例
今回の課題の2倍角の公式を確かめるプログラム例を示します。
// 2倍角の公式を確認する
void setup(){
float alpha = 34.0; // 角度(°)
float lhs, rhs; // 左辺と右辺の値
// sinの2倍角の公式
println("sinの2倍角の公式");
lhs = sin( 2.0 * radians(alpha) );
rhs = 2.0 * sin( radians(alpha) ) * cos( radians(alpha) );
println( alpha, lhs, rhs );
println();
// cosの2倍角の公式
float rhs2, rhs3;
println("cosの2倍角の公式");
lhs = cos( 2.0 * radians(alpha) );
rhs = cos( radians(alpha) ) * cos( radians(alpha) )
- sin( radians(alpha) ) * sin( radians(alpha) );
rhs2 = 1.0 - 2.0 * sin( radians(alpha) ) * sin( radians(alpha) );
rhs3 = 2.0 * cos( radians(alpha) ) * cos( radians(alpha) ) - 1.0;
println( alpha, lhs, rhs, rhs2, rhs3 );
println();
// tanの2倍角の公式
println("tanの2倍角の公式");
lhs = tan( 2.0 * radians(alpha) );
rhs = 2.0 * tan( radians(alpha) )
/ (1.0 - tan( radians(alpha) ) * tan( radians(alpha) ) );
println( alpha, lhs, rhs );
}
ソースコード1 2倍角の公式を確かめるプログラム
ソースコード1を、Processingの開発環境ウィンドウを開いて(スケッチ名を「check_double_angle_formula」としています)、テキストエディタ部分に書いて実行すると、コンソールに
sinの2倍角の公式
34.0 0.92718387 0.92718387
cosの2倍角の公式
34.0 0.37460664 0.37460667 0.3746066 0.37460673
tanの2倍角の公式
34.0 2.4750865 2.475087
と出力されます(図1)。
コンソールに出力された結果の各行の左と右( cos については3つ)の値を比較すると丸め誤差の範囲内で一致していることがわかります。つまり、2倍角の公式はいずれも成り立っているだろうことがわかります。
本日は以上です。
次回は、半角の公式を確かめるプログラムについて考えていきます。
次回もよろしくお願いします。
※今回の課題とその解答例について質問や疑問がある方は、本記事の下部にあるコメント欄からお願いします。
MK’s papa