C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。
Q&A
解決済
5回答
7865閲覧
総合スコア21
0グッド
0クリップ
投稿2016/10/27 06:04
0
初歩的な質問を何度も申し訳ないです。
cos(theta * M_PI / 180.0)
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
質問へのコメント
回答5件
ベストアンサー
C言語のライブラリにある三角関数(Sin,Cos,Tan)の引数は、角度をラジアン単位で指定します。
ラジアンというのは、半径が1の扇形の弧の長さで角度(中心角)を表す方法です。 中心角が360度だと、弧は全円になりますから、長さは2πになります。 つまり、360度=2πラジアン という関係が成り立ちます。
theta度のCosineの値をCで求めようとすると、(M_PIに円周率πの値が設定されていると想定) 1) まず、theta度を (2 * M_PI *(theta / 360))という式でラジアンに変換します。 2) それをcos関数の引数にすれば、theta度のCosineの値が得られます(下式)。 cos(2 * M_PI *(theta / 360))
2/360は約分して 1/180になりますから、質問の式になる訳です。
投稿2016/10/27 06:47
総合スコア6915
theta * M_PI / 180.0 が Θにあたります。
ただ、皆さんの仰る通り、角度の単位系としては度数法(0[°]から360[°]を一周とするもの)と弧度法(0[rad]から2π[rad]を一周とするもの)があるので、単位変換しています。
投稿2016/10/27 11:34
総合スコア4830
「theta」が角度(°)なのですね。C/C++のcos/sin/tanは引数としてラジアン(rad)を与える必要があります。 M_PIがπ(=3.14・・・)でしょうから、πを掛けて180°で割ってラジアンに変換しているわけです。
投稿2016/10/27 08:31
総合スコア3579
ラジアン変換ですね。 そのままでは度数法なのでラジアン変換(弧度法)が必要です。
投稿2016/10/27 06:11
総合スコア40
シータは360度までの値を入力します。 他方、PCの角度処理はラジアン角です。 ゆえに、円周率を180で割って掛け算です。
投稿2016/10/27 06:10
総合スコア716
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
15分調べてもわからないことはteratailで質問しよう!
ただいまの回答率85.50%
質問をまとめることで思考を整理して素早く解決
テンプレート機能で簡単に質問をまとめる
初歩的なプログラム、三角関数での質問
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。