« [R]コンソール画面の表示を更新する | トップページ | [R]行列の階数を得る »

2019年3月 6日 (水)

[C#]三角関数の値の計算

三角関数の値の計算はMathクラスのメソッドを使う。各メソッドの引数に与える角度の単位はラジアンであることに注意。

以下はそれぞれsin(90)、cos(45)、tan(30)の値を求めた例。

Mathクラスの三角関数の値を計算する引数は、角はラジアン単位で与えなければならないため、度をラジアンに変換する計算(πをかけて180で割る)をしている。

using System;
class Trifunc {
  public static void Main() {
    double d1, d2, d3, d4;
    d1 = Math.Sin(90 * Math.PI / 180);
    d2 = Math.Cos(45 * Math.PI / 180);
    d3 = Math.Tan(30 * Math.PI / 180);
    d4 = Math.Atan(Math.Sqrt(3) / 1);
    d5 = Math.Atan2(Math.Sqrt(3), 1);
    Console.WriteLine("{0}", d1);
    Console.WriteLine("{0}", d2);
    Console.WriteLine("{0}", d3);
    Console.WriteLine("{0}", d4 * 180 / Math.PI);
    Console.WriteLine("{0}", d5 * 180 / Math.PI);
  }
}

(出力)

1
0.707106781186548
0.577350269189626
60
60

逆正接関数 tan -1 x のみ特別なメソッドが用意されており、。通常はMath.Atanを使えばよいが、直角三角形の底辺の長さxと高さyを与えてそのタンジェント(正接)の角度を計算する場合は、Math.Atan2メソッドでも計算することができる。なお、引数の与え方はこの例ではMath.Atan2(y, x)である。

« [R]コンソール画面の表示を更新する | トップページ | [R]行列の階数を得る »

C#」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

« [R]コンソール画面の表示を更新する | トップページ | [R]行列の階数を得る »

無料ブログはココログ

■■

■■■