C#のMathF.Sqrt()メソッドの使い方をサンプルコード付きで解説
MathF.Sqrt()メソッドとは
C#のMathF.Sqrt()メソッドは、単精度浮動小数点数(float型)の値に対して平方根を計算するためのメソッドです。Math.Sqrt()がdouble型を扱うのに対し、MathF.Sqrt()はfloat型専用であり、ゲーム開発やグラフィックス処理など、パフォーマンスが重視される場面で活用されます。
構文
MathF.Sqrt()メソッドの構文は以下の通りです。
public static float Sqrt(float val);
引数 val には、平方根を求めたい数値を指定します。
戻り値の挙動
- 正の数を渡した場合:その平方根を返します
- 負の数を渡した場合:
NaN(非数)を返します - NaNを渡した場合:
NaNを返します - 0を渡した場合:
0を返します
使用例1:正の数とNaNの場合
まず、正の数とNaNを引数に指定した場合の動作を見てみましょう。
using System;
public class Demo {
public static void Main(){
float val1 = 36f;
float val2 = float.NaN;
Console.WriteLine("MathF.Sqrt(val1) = " + MathF.Sqrt(val1));
Console.WriteLine("MathF.Sqrt(val2) = " + MathF.Sqrt(val2));
}
}実行結果
MathF.Sqrt(val1) = 6 MathF.Sqrt(val2) = NaN
36の平方根である「6」が正しく出力され、NaNを渡した場合はそのままNaNが返されていることがわかります。
使用例2:負の数と0の場合
次に、負の数と0を引数に指定した場合の動作を確認します。
using System;
public class Demo {
public static void Main(){
float val1 = -121f;
float val2 = 0f;
Console.WriteLine("MathF.Sqrt(val1) = " + MathF.Sqrt(val1));
Console.WriteLine("MathF.Sqrt(val2) = " + MathF.Sqrt(val2));
}
}実行結果
MathF.Sqrt(val1) = NaN MathF.Sqrt(val2) = 0
ポイント解説
実行結果から、以下の重要な特徴が読み取れます。
- 負の数(-121)を渡すと例外はスローされず、NaNが返されます。実数の範囲では負の数の平方根は定義されないためです。
- 0を渡した場合は0がそのまま返されます。
負の数を扱いたい場合は、事前に値の符号をチェックするか、複素数を扱えるSystem.Numerics.Complex構造体の利用を検討するとよいでしょう。
-
C#のMathF.Tanh()メソッドとは?構文と具体例でわかりやすく解説
C#のMathF.Tanh()メソッドは、指定されたfloat型の値に対する双曲線正接(ハイパボリックタンジェント)を返すメソッドです。数学的な計算やグラフ描画、信号処理など、浮動小数点数を扱う場面で活用されます。この記事では、MathF.Tanh()メソッドの基本的な構文から、実際のコード例とその実行結果までをわかりやすく解説します。MathF.Tanh()メソッドの構文MathF.Tanh()メソッドの構文は以下の通りです。public static float Tanh (float val);引数 val には、双曲線正接を求めたい数値(float型)を指定します。戻り値として、その値
-
C#のMathF.Tan()メソッドの使い方をサンプルコード付きで解説
C#のMathF.Tan()メソッドは、指定されたfloat型の角度(ラジアン単位)に対する正接(タンジェント)を計算して返します。科学技術計算やグラフィックス処理など、三角関数の計算が必要な場面で活用できる便利なメソッドです。構文MathF.Tan()メソッドの構文は以下の通りです。public static float Tan (float val);パラメータ val には、正接を求めたい角度をラジアン単位で指定します。戻り値はfloat型です。使用例1:通常の値とNaNの場合まず、通常の数値とNaN(非数)を引数に渡した場合の動作を確認してみましょう。using System; pub