C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#のMathF.Cos()メソッドの使い方をサンプルコード付きで解説

C#のMathF.Cos()メソッドは、指定されたfloat型(単精度浮動小数点数)の引数に対する余弦(コサイン)の値を返します。三角関数の計算が必要な場面で、float型の精度で高速に処理したい場合に便利なメソッドです。

構文

MathF.Cos()メソッドの構文は以下のとおりです。

public static float Cos (float val);

引数 val には、コサインを求めたいラジアン単位の角度をfloat型で指定します。戻り値もfloat型です。

MathF.Cos()とMath.Cos()の違い

似たメソッドとしてMath.Cos()がありますが、こちらはdouble型を扱います。一方、MathF.Cos()はfloat型専用のため、単精度での計算が可能となり、メモリ使用量を抑えたい場合やゲーム開発などパフォーマンスが重視される場面で活用されます。

使用例1:70度のコサインを求める

まずは、角度70度のコサインを求める例を見てみましょう。度からラジアンへの変換には「角度 × π ÷ 180」の式を使用します。

using System;
class Demo {
   public static void Main(){
      float val1 = 70f;
      float res = (val1 * (MathF.PI)) / 180;
      Console.WriteLine(MathF.Cos(res));
   }
}

出力結果

このプログラムを実行すると、以下の出力が得られます。

0.34202

使用例2:90度のコサインを求める

次に、角度90度の場合の例です。数学的にはcos(90°) = 0ですが、浮動小数点演算ではπを正確に表現できないため、ごくわずかな誤差が生じます。

using System;
class Demo {
   public static void Main(){
      float val1 = 90f;
      float res = (val1 * (MathF.PI)) / 180;
      Console.WriteLine(MathF.Cos(res));
   }
}

出力結果

実行結果は以下のとおりです。

-4.371139E-08

このように「-4.371139E-08」は指数表記で約-0.0000000437を意味し、ほぼ0に等しい値です。これは浮動小数点数の特性による誤差であり、プログラム上では許容範囲として扱うのが一般的です。

まとめ

MathF.Cos()メソッドを使えば、float型の角度(ラジアン)から簡単にコサイン値を取得できます。度数法の角度を使いたい場合は、事前にラジアンへ変換してから渡す点に注意しましょう。

  1. C#のMathF.Truncate()メソッドとは?具体例でわかりやすく解説

    C#のMathF.Truncate()メソッドは、指定された単精度浮動小数点数(float)の整数部分を計算するためのメソッドです。小数点以下を切り捨て、整数部分のみをfloat型として返します。構文MathF.Truncate()メソッドの構文は以下の通りです。public static float Truncate (float val);引数「val」には、切り捨ての対象となる数値を指定します。戻り値valの整数部分がfloat型で返されます。引数がNaNの場合はNaNが、無限大の場合はそのまま無限大が返される点に注意してください。使用例1:無限大を渡した場合まず、正の無限大と負の無限大

  2. C#のMathF.Tanh()メソッドとは?構文と具体例でわかりやすく解説

    C#のMathF.Tanh()メソッドは、指定されたfloat型の値に対する双曲線正接(ハイパボリックタンジェント)を返すメソッドです。数学的な計算やグラフ描画、信号処理など、浮動小数点数を扱う場面で活用されます。この記事では、MathF.Tanh()メソッドの基本的な構文から、実際のコード例とその実行結果までをわかりやすく解説します。MathF.Tanh()メソッドの構文MathF.Tanh()メソッドの構文は以下の通りです。public static float Tanh (float val);引数 val には、双曲線正接を求めたい数値(float型)を指定します。戻り値として、その値