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

C#のMath.Tanh()メソッドとは?使い方とサンプルコードを徹底解説

C#のMath.Tanh()メソッドは、指定された角度の双曲線正接(ハイパボリックタンジェント)を返すメソッドです。System.Mathクラスに含まれており、数学的な計算やニューラルネットワークの活性化関数など、さまざまな場面で活用されています。

構文

public static double Tanh (double val);

引数「val」には、双曲線正接を求めたい角度を倍精度浮動小数点数(double型)で指定します。戻り値もdouble型で、計算結果の双曲線正接が返されます。

Math.Tanh()メソッドの使用例

それでは、実際にMath.Tanh()メソッドを使用したサンプルコードを見ていきましょう。次の例では、30.0と60度をラジアンに変換した値を引数に渡しています。

using System;
public class Demo {
    public static void Main(){
        double val1 = 30.0;
        double val2 = (60 * (Math.PI)) / 180;
        Console.WriteLine(Math.Tanh(val1));
        Console.WriteLine(Math.Tanh(val2));
    }
}

実行結果

上記のコードを実行すると、以下のような出力が得られます。

1
0.780714435359268

30.0という大きな値を渡した場合は結果がほぼ1になり、60度(約1.047ラジアン)を渡した場合は約0.78という値が返されていることがわかります。

別の使用例

続いて、0.0、1.0、15.0といった異なる値を引数に渡した場合の挙動を確認してみましょう。

using System;
public class Demo {
    public static void Main(){
        double val1 = 0.0;
        double val2 = 1.0;
        double val3 = 15.0;
        Console.WriteLine(Math.Tanh(val1));
        Console.WriteLine(Math.Tanh(val2));
        Console.WriteLine(Math.Tanh(val3));
    }
}

実行結果

上記のコードを実行すると、以下のような出力が得られます。

0
0.761594155955765
0.999999999999813

まとめ

Math.Tanh()メソッドを使えば、指定した角度の双曲線正接を簡単に計算できます。引数が0の場合は0を返し、値が大きくなるほど結果は1に近づくという特徴があります。機械学習の分野でよく使われるtanh関数の基礎として、ぜひ押さえておきましょう。

  1. C#のMath.DivRem()メソッドの使い方を徹底解説!商と余りを同時に取得する方法

    C#のMath.DivRem()メソッドは、2つの数値の除算を行って商(quotient)を返すとともに、余り(remainder)をoutパラメータとして受け取ることができる便利なメソッドです。通常、商と余りの両方を求めるには「/」演算子と「%」演算子を別々に使う必要がありますが、このメソッドを使えば一度の呼び出しで両方の結果を取得できます。構文public static int DivRem(int dividend, int divisor, out int remainder); public static long DivRem(long dividend, long divisor

  2. C#のMath.DivRemメソッドとは?商と余りを同時に計算する方法

    C#のMath.DivRemメソッドは、2つの数値の商(割り算の結果)を計算すると同時に、余りも取得できる便利なメソッドです。通常、商を求める場合は「/」演算子、余りを求める場合は「%」演算子を使いますが、Math.DivRemを使えば1回の呼び出しで両方の結果を得ることができます。 Math.DivRemメソッドの基本構文 まず、被除数(割られる数)と除数(割る数)を設定します。 // 被除数(割られる数) long dividend = 30; // 除数(割る数) long divisor = 7; 続いて、DivRemメソッドを呼び出します。第3引数にはoutパラメータとして余りを受け