C#のMath.Log10()メソッドの使い方を徹底解説!常用対数の計算方法と戻り値一覧
Math.Log10()メソッドとは
C#のMath.Log10()メソッドは、指定された数値の常用対数(底が10の対数)を計算して返す静的メソッドです。科学技術計算や桁数の判定、スケール変換など、さまざまな場面で活用されます。
構文
public static double Log10 (double val);
パラメータ val には、対数を求めたい対象の数値をdouble型で指定します。
戻り値の一覧
Math.Log10()メソッドは、引数に渡した値によって以下のような結果を返します。
| valパラメータの値 | 戻り値 |
|---|---|
| 正の数 | 底10の対数(log₁₀ d) |
| ゼロ | NegativeInfinity(負の無限大) |
| 負の数 | NaN(非数) |
| NaN | NaN(非数) |
| PositiveInfinity(正の無限大) | PositiveInfinity(正の無限大) |
このように、ゼロや負の数を渡した場合でも例外はスローされず、特殊な値が返される点に注意しましょう。
使用例1:無限大を渡した場合
まず、正の無限大と負の無限大を引数に渡した場合の動作を確認してみましょう。
using System;
public class Demo {
public static void Main(){
double val1 = Double.PositiveInfinity;
double val2 = Double.NegativeInfinity;
Console.WriteLine(Math.Log10(val1));
Console.WriteLine(Math.Log10(val2));
}
}実行結果
∞ NaN
正の無限大に対しては正の無限大が、負の無限大に対してはNaNが返されることがわかります。
使用例2:0・1・NaNを渡した場合
次に、ゼロ、1、NaNを引数に渡した場合の動作を見てみましょう。
using System;
public class Demo {
public static void Main(){
double val1 = 0;
double val2 = 1;
double val3 = Double.NaN;
Console.WriteLine(Math.Log10(val1));
Console.WriteLine(Math.Log10(val2));
Console.WriteLine(Math.Log10(val3));
}
}実行結果
-∞ 0 NaN
数学的にlog₁₀(0)は負の無限大に発散するためNegativeInfinityが、log₁₀(1)は0が、NaNに対してはNaNがそれぞれ返されます。
まとめ
Math.Log10()メソッドを使えば、簡単に常用対数を計算できます。引数の値によって戻り値が大きく異なるため、特にゼロや負の数を扱う可能性がある場合は、戻り値がNaNや無限大になっていないかのチェックを行うと安全です。
-
C#のMath.Log()メソッドの使い方を徹底解説
C#のMath.Log()メソッドは、指定された数値の対数を返すために使用される静的メソッドです。引数を1つだけ渡した場合は自然対数(底e)が計算され、2つ目の引数で底を指定することもできます。 構文 public static double Log(double num) public static double Log(double num, double base) 上記の構文における各要素の意味は以下の通りです。 num:対数を計算する対象となる数値 base:対数の底(基数)。省略した場合は自然対数(底e)が計算されます なお、引数に負の数やNaNを渡した場合、戻り値はNa
-
C#のMath.IEEERemainder()メソッドとは?使い方と実行例を解説
C#のMath.IEEERemainder()メソッドは、指定した数値(被除数)を別の数値(除数)で除算した結果の剰余を、IEEE 754規格に基づいて返す静的メソッドです。通常の剰余演算子「%」とは計算結果が異なる場合がある点に注意しましょう。構文public static double IEEERemainder (double dividend, double divisor);パラメータdividend:被除数(割られる数)を表す倍精度浮動小数点数。divisor:除数(割る数)を表す倍精度浮動小数点数。戻り値dividend を divisor で割ったIEEE剰余を返します。この剰