BigInteger.Log メソッド

定義

指定した数の対数を返します。Returns the logarithm of a specified number.

オーバーロード

Log(BigInteger)

指定した数の自然 (底 e) 対数を返します。Returns the natural (base e) logarithm of a specified number.

Log(BigInteger, Double)

指定した数値の指定した底での対数を返します。Returns the logarithm of a specified number in a specified base.

Log(BigInteger)

指定した数の自然 (底 e) 対数を返します。Returns the natural (base e) logarithm of a specified number.

public:
 static double Log(System::Numerics::BigInteger value);
public static double Log (System.Numerics.BigInteger value);
static member Log : System.Numerics.BigInteger -> double
Public Shared Function Log (value As BigInteger) As Double

パラメーター

value
BigInteger

対数を求める対象の数値。The number whose logarithm is to be found.

戻り値

Double

value の自然対数 (e を底とする対数)。「解説」の表を参照してください。The natural (base e) logarithm of value, as shown in the table in the Remarks section.

例外

value の自然対数が、Double データ型の範囲外です。The natural log of value is out of range of the Double data type.

注釈

value パラメーターは、10進数値として指定されます。The value parameter is specified as a base 10 number.

このメソッドの正確な戻り値は、次の表に示すように、valueの符号によって異なります。The precise return value of this method depends on the sign of value, as the following table shows.

value パラメーターの符号Sign of value parameter 戻り値Return value
PositivePositive valueの自然対数。つまり、ln value、または log evalueです。The natural logarithm of value; that is, ln value, or log evalue.
ゼロZero https://login.microsoftonline.com/consumers/NegativeInfinity.
NegativeNegative https://login.microsoftonline.com/consumers/NaN.

BigInteger 値の10を底とする対数を計算するには、Log10 メソッドを呼び出します。To calculate the base 10 logarithm of a BigInteger value, call the Log10 method. 別の基数の数値の対数を計算するには、Log(BigInteger, Double) メソッドを呼び出します。To calculate the logarithm of a number in another base, call the Log(BigInteger, Double) method.

Math.Exp メソッドと共に Log メソッドを呼び出すことによって、数値の平方根を見つけることができます。You can find the square root of a number by calling the Log method along with the Math.Exp method. 結果が Double.MaxValueよりも大きい場合は、結果が Double.PositiveInfinity ことに注意してください。Note that the result is Double.PositiveInfinity if the result is greater than Double.MaxValue. 次の例では、BigInteger 値の配列内の各要素の平方根を計算します。The following example calculates the square root of each element in an array of BigInteger values.

using System;
using System.Numerics;

public class Example
{
   public static void Main()
   {
      BigInteger[] values = { 2, 100, BigInteger.Pow(1000, 100), 
                              BigInteger.Pow(2, 64) };
      foreach (var value in values)                                    
         Console.WriteLine("The square root of {0} is {1}", value, 
                           Math.Exp(BigInteger.Log(value) / 2));
   }
}
// The example displays the following output:
//    The square root of 2 is 1.41421356237309
//    The square root of 100 is 10
//    The square root of 1000000000000000000000000000000000000000000000000000000000000
//    00000000000000000000000000000000000000000000000000000000000000000000000000000000
//    00000000000000000000000000000000000000000000000000000000000000000000000000000000
//    00000000000000000000000000000000000000000000000000000000000000000000000000000000
//     is 9.99999999999988E+149
//    The square root of 18446744073709551616 is 4294967296
Imports System.Numerics

Module Example
   Public Sub Main()
      Dim values() As BigInteger = { 2, 100, BigInteger.Pow(1000, 100), 
                                     BigInteger.Pow(2, 64) }
      For Each value In values                                    
         Console.WriteLine("The square root of {0} is {1}", value, 
                           Math.Exp(BigInteger.Log(value) / 2))
      Next                                     
   End Sub
End Module
' The example displays the following output:
'    The square root of 2 is 1.41421356237309
'    The square root of 100 is 10
'    The square root of 1000000000000000000000000000000000000000000000000000000000000
'    00000000000000000000000000000000000000000000000000000000000000000000000000000000
'    00000000000000000000000000000000000000000000000000000000000000000000000000000000
'    00000000000000000000000000000000000000000000000000000000000000000000000000000000
'     is 9.99999999999988E+149
'    The square root of 18446744073709551616 is 4294967296

このメソッドは、プリミティブな数値型の Math.Log(Double) メソッドに対応しています。This method corresponds to the Math.Log(Double) method for the primitive numeric types.

こちらもご覧ください

Log(BigInteger, Double)

指定した数値の指定した底での対数を返します。Returns the logarithm of a specified number in a specified base.

public:
 static double Log(System::Numerics::BigInteger value, double baseValue);
public static double Log (System.Numerics.BigInteger value, double baseValue);
static member Log : System.Numerics.BigInteger * double -> double
Public Shared Function Log (value As BigInteger, baseValue As Double) As Double

パラメーター

value
BigInteger

対数を検索する対象の数値。A number whose logarithm is to be found.

baseValue
Double

対数の底。The base of the logarithm.

戻り値

Double

baseValue を底とする value の対数。「解説」の表を参照してください。The base baseValue logarithm of value, as shown in the table in the Remarks section.

例外

value の対数が、Double データ型の範囲外です。The log of value is out of range of the Double data type.

注釈

value パラメーターと baseValue パラメーターは、10進数値として指定されます。The value and baseValue parameters are specified as base 10 numbers.

メソッドの正確な戻り値は、次の表に示すように、value の符号と baseValueの符号と値によって異なります。The precise return value of the method depends on the sign of value and on the sign and value of baseValue, as the following table shows.

value パラメーターvalue parameter baseValue パラメーターbaseValue parameter 戻り値Return value
value > 0value > 0 (0 < baseValue < 1)-または-(baseValue > 1)(0 < baseValue < 1) -or-(baseValue > 1) logbaseValue (value)logbaseValue(value)
value < 0value < 0 (任意の値)(any value) Double.NaN
(任意の値)(any value) baseValue < 0baseValue < 0 Double.NaN
value != 1value != 1 baseValue = 0baseValue = 0 Double.NaN
value != 1value != 1 baseValue = Double.PositiveInfinity Double.NaN
(任意の値)(any value) baseValue = Double.NaN Double.NaN
(任意の値)(any value) baseValue = 1baseValue = 1 Double.NaN
value = 0value = 0 0 < baseValue < 10 < baseValue < 1 Double.PositiveInfinity
value = 0value = 0 baseValue > 1baseValue > 1 Double.PositiveInfinity
value = 1value = 1 baseValue = 0baseValue = 0 00
value = 1value = 1 baseValue = Double.PositiveInfinity 00

BigInteger 値の10を底とする対数を計算するには、Log10 メソッドを呼び出します。To calculate the base 10 logarithm of a BigInteger value, call the Log10 method. 数値の自然対数を計算するには、Log(BigInteger) メソッドを呼び出します。To calculate the natural logarithm of a number, call the Log(BigInteger) method.

このメソッドは、プリミティブな数値型の Math.Log メソッドに対応しています。This method corresponds to the Math.Log method for the primitive numeric types.

こちらもご覧ください

適用対象