Math.Log 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
지정된 숫자의 로그를 반환합니다.
오버로드
Log(Double, Double) |
지정된 밑을 사용하여 지정된 숫자의 로그를 반환합니다. |
Log(Double) |
지정된 숫자의 자연(밑 |
Log(Double, Double)
- Source:
- Math.cs
- Source:
- Math.cs
- Source:
- Math.cs
지정된 밑을 사용하여 지정된 숫자의 로그를 반환합니다.
public:
static double Log(double a, double newBase);
public static double Log (double a, double newBase);
static member Log : double * double -> double
Public Shared Function Log (a As Double, newBase As Double) As Double
매개 변수
- a
- Double
로그가 있는 숫자입니다.
- newBase
- Double
로그의 밑입니다.
반환
다음 표에 나와 있는 값 중 하나입니다. +Infinity는 PositiveInfinity, -Infinity는 NegativeInfinity,NaN은 NaN을 의미합니다.
a | newBase | 반환 값 |
---|---|---|
a
> 0 | (0 <newBase < 1) -또는- (newBase > 1) | lognewBase(a) |
a
< 0 | (모든 값) | NaN |
(모든 값) |
newBase
< 0 | NaN |
a != 1 |
newBase = 0 | NaN |
a != 1 |
newBase = +Infinity | NaN |
a = NaN | (모든 값) | NaN |
(모든 값) |
newBase = NaN | NaN |
(모든 값) |
newBase = 1 | NaN |
a = 0 | 0 <newBase < 1 | +Infinity |
a = 0 |
newBase
> 1 | -Infinity |
a = +Infinity | 0 <newBase < 1 | -Infinity |
a = +Infinity |
newBase
> 1 | +Infinity |
a = 1 |
newBase = 0 | 0 |
a = 1 |
newBase = +Infinity | 0 |
예제
다음 예제에서는 를 사용하여 Log 선택한 값에 대한 특정 로그 ID를 평가합니다.
// Example for the Math::Log( double ) and Math::Log( double, double ) methods.
using namespace System;
// Evaluate logarithmic identities that are functions of two arguments.
void UseBaseAndArg( double argB, double argX )
{
// Evaluate log(B)[X] == 1 / log(X)[B].
Console::WriteLine( "\n Math::Log({1}, {0}) == {2:E16}"
"\n 1.0 / Math::Log({0}, {1}) == {3:E16}", argB, argX, Math::Log( argX, argB ), 1.0 / Math::Log( argB, argX ) );
// Evaluate log(B)[X] == ln[X] / ln[B].
Console::WriteLine( " Math::Log({1}) / Math::Log({0}) == {2:E16}", argB, argX, Math::Log( argX ) / Math::Log( argB ) );
// Evaluate log(B)[X] == log(B)[e] * ln[X].
Console::WriteLine( "Math::Log(Math::E, {0}) * Math::Log({1}) == {2:E16}", argB, argX, Math::Log( Math::E, argB ) * Math::Log( argX ) );
}
void main()
{
Console::WriteLine( "This example of Math::Log( double ) and "
"Math::Log( double, double )\n"
"generates the following output.\n" );
Console::WriteLine( "Evaluate these identities with "
"selected values for X and B (base):" );
Console::WriteLine( " log(B)[X] == 1 / log(X)[B]" );
Console::WriteLine( " log(B)[X] == ln[X] / ln[B]" );
Console::WriteLine( " log(B)[X] == log(B)[e] * ln[X]" );
UseBaseAndArg( 0.1, 1.2 );
UseBaseAndArg( 1.2, 4.9 );
UseBaseAndArg( 4.9, 9.9 );
UseBaseAndArg( 9.9, 0.1 );
}
/*
This example of Math::Log( double ) and Math::Log( double, double )
generates the following output.
Evaluate these identities with selected values for X and B (base):
log(B)[X] == 1 / log(X)[B]
log(B)[X] == ln[X] / ln[B]
log(B)[X] == log(B)[e] * ln[X]
Math::Log(1.2, 0.1) == -7.9181246047624818E-002
1.0 / Math::Log(0.1, 1.2) == -7.9181246047624818E-002
Math::Log(1.2) / Math::Log(0.1) == -7.9181246047624818E-002
Math::Log(Math::E, 0.1) * Math::Log(1.2) == -7.9181246047624804E-002
Math::Log(4.9, 1.2) == 8.7166610085093179E+000
1.0 / Math::Log(1.2, 4.9) == 8.7166610085093161E+000
Math::Log(4.9) / Math::Log(1.2) == 8.7166610085093179E+000
Math::Log(Math::E, 1.2) * Math::Log(4.9) == 8.7166610085093179E+000
Math::Log(9.9, 4.9) == 1.4425396251981288E+000
1.0 / Math::Log(4.9, 9.9) == 1.4425396251981288E+000
Math::Log(9.9) / Math::Log(4.9) == 1.4425396251981288E+000
Math::Log(Math::E, 4.9) * Math::Log(9.9) == 1.4425396251981288E+000
Math::Log(0.1, 9.9) == -1.0043839404494075E+000
1.0 / Math::Log(9.9, 0.1) == -1.0043839404494075E+000
Math::Log(0.1) / Math::Log(9.9) == -1.0043839404494075E+000
Math::Log(Math::E, 9.9) * Math::Log(0.1) == -1.0043839404494077E+000
*/
// Example for the Math.Log( double ) and Math.Log( double, double ) methods.
using System;
class LogDLogDD
{
public static void Main()
{
Console.WriteLine(
"This example of Math.Log( double ) and " +
"Math.Log( double, double )\n" +
"generates the following output.\n" );
Console.WriteLine(
"Evaluate these identities with " +
"selected values for X and B (base):" );
Console.WriteLine( " log(B)[X] == 1 / log(X)[B]" );
Console.WriteLine( " log(B)[X] == ln[X] / ln[B]" );
Console.WriteLine( " log(B)[X] == log(B)[e] * ln[X]" );
UseBaseAndArg(0.1, 1.2);
UseBaseAndArg(1.2, 4.9);
UseBaseAndArg(4.9, 9.9);
UseBaseAndArg(9.9, 0.1);
}
// Evaluate logarithmic identities that are functions of two arguments.
static void UseBaseAndArg(double argB, double argX)
{
// Evaluate log(B)[X] == 1 / log(X)[B].
Console.WriteLine(
"\n Math.Log({1}, {0}) == {2:E16}" +
"\n 1.0 / Math.Log({0}, {1}) == {3:E16}",
argB, argX, Math.Log(argX, argB),
1.0 / Math.Log(argB, argX) );
// Evaluate log(B)[X] == ln[X] / ln[B].
Console.WriteLine(
" Math.Log({1}) / Math.Log({0}) == {2:E16}",
argB, argX, Math.Log(argX) / Math.Log(argB) );
// Evaluate log(B)[X] == log(B)[e] * ln[X].
Console.WriteLine(
"Math.Log(Math.E, {0}) * Math.Log({1}) == {2:E16}",
argB, argX, Math.Log(Math.E, argB) * Math.Log(argX) );
}
}
/*
This example of Math.Log( double ) and Math.Log( double, double )
generates the following output.
Evaluate these identities with selected values for X and B (base):
log(B)[X] == 1 / log(X)[B]
log(B)[X] == ln[X] / ln[B]
log(B)[X] == log(B)[e] * ln[X]
Math.Log(1.2, 0.1) == -7.9181246047624818E-002
1.0 / Math.Log(0.1, 1.2) == -7.9181246047624818E-002
Math.Log(1.2) / Math.Log(0.1) == -7.9181246047624818E-002
Math.Log(Math.E, 0.1) * Math.Log(1.2) == -7.9181246047624804E-002
Math.Log(4.9, 1.2) == 8.7166610085093179E+000
1.0 / Math.Log(1.2, 4.9) == 8.7166610085093161E+000
Math.Log(4.9) / Math.Log(1.2) == 8.7166610085093179E+000
Math.Log(Math.E, 1.2) * Math.Log(4.9) == 8.7166610085093179E+000
Math.Log(9.9, 4.9) == 1.4425396251981288E+000
1.0 / Math.Log(4.9, 9.9) == 1.4425396251981288E+000
Math.Log(9.9) / Math.Log(4.9) == 1.4425396251981288E+000
Math.Log(Math.E, 4.9) * Math.Log(9.9) == 1.4425396251981288E+000
Math.Log(0.1, 9.9) == -1.0043839404494075E+000
1.0 / Math.Log(9.9, 0.1) == -1.0043839404494075E+000
Math.Log(0.1) / Math.Log(9.9) == -1.0043839404494075E+000
Math.Log(Math.E, 9.9) * Math.Log(0.1) == -1.0043839404494077E+000
*/
// Example for the Math.Log( double ) and Math.Log( double, double ) methods.
open System
// Evaluate logarithmic identities that are functions of two arguments.
let useBaseAndArg argB argX =
// Evaluate log(B)[X] == 1 / log(X)[B].
printfn $"""
Math.Log({argX}, {argB}) == {Math.Log(argX, argB):E16}
1.0 / Math.Log({argB}, {argX}) == {1. / Math.Log(argB, argX):E16}"""
// Evaluate log(B)[X] == ln[X] / ln[B].
printfn $" Math.Log({argX}) / Math.Log({argB}) == {Math.Log argX / Math.Log argB:E16}"
// Evaluate log(B)[X] == log(B)[e] * ln[X].
printfn $"Math.Log(Math.E, {argB}) * Math.Log({argX}) == {Math.Log(Math.E, argB) * Math.Log argX:E16}"
printfn
"""This example of Math.Log( double ) and Math.Log( double, double )
generates the following output.
printfn "Evaluate these identities with selected values for X and B (base):"""
printfn " log(B)[X] == 1 / log(X)[B]"
printfn " log(B)[X] == ln[X] / ln[B]"
printfn " log(B)[X] == log(B)[e] * ln[X]"
useBaseAndArg 0.1 1.2
useBaseAndArg 1.2 4.9
useBaseAndArg 4.9 9.9
useBaseAndArg 9.9 0.1
// This example of Math.Log( double ) and Math.Log( double, double )
// generates the following output.
//
// Evaluate these identities with selected values for X and B (base):
// log(B)[X] == 1 / log(X)[B]
// log(B)[X] == ln[X] / ln[B]
// log(B)[X] == log(B)[e] * ln[X]
//
// Math.Log(1.2, 0.1) == -7.9181246047624818E-002
// 1.0 / Math.Log(0.1, 1.2) == -7.9181246047624818E-002
// Math.Log(1.2) / Math.Log(0.1) == -7.9181246047624818E-002
// Math.Log(Math.E, 0.1) * Math.Log(1.2) == -7.9181246047624804E-002
//
// Math.Log(4.9, 1.2) == 8.7166610085093179E+000
// 1.0 / Math.Log(1.2, 4.9) == 8.7166610085093161E+000
// Math.Log(4.9) / Math.Log(1.2) == 8.7166610085093179E+000
// Math.Log(Math.E, 1.2) * Math.Log(4.9) == 8.7166610085093179E+000
//
// Math.Log(9.9, 4.9) == 1.4425396251981288E+000
// 1.0 / Math.Log(4.9, 9.9) == 1.4425396251981288E+000
// Math.Log(9.9) / Math.Log(4.9) == 1.4425396251981288E+000
// Math.Log(Math.E, 4.9) * Math.Log(9.9) == 1.4425396251981288E+000
//
// Math.Log(0.1, 9.9) == -1.0043839404494075E+000
// 1.0 / Math.Log(9.9, 0.1) == -1.0043839404494075E+000
// Math.Log(0.1) / Math.Log(9.9) == -1.0043839404494075E+000
// Math.Log(Math.E, 9.9) * Math.Log(0.1) == -1.0043839404494077E+000
' Example for the Math.Log( Double ) and Math.Log( Double, Double ) methods.
Module LogDLogDD
Sub Main()
Console.WriteLine( _
"This example of Math.Log( Double ) and " + _
"Math.Log( Double, Double )" & vbCrLf & _
"generates the following output." & vbCrLf)
Console.WriteLine( _
"Evaluate these identities with selected " & _
"values for X and B (base):")
Console.WriteLine(" log(B)[X] = 1 / log(X)[B]")
Console.WriteLine(" log(B)[X] = ln[X] / ln[B]")
Console.WriteLine(" log(B)[X] = log(B)[e] * ln[X]")
UseBaseAndArg(0.1, 1.2)
UseBaseAndArg(1.2, 4.9)
UseBaseAndArg(4.9, 9.9)
UseBaseAndArg(9.9, 0.1)
End Sub
' Evaluate logarithmic identities that are functions of two arguments.
Sub UseBaseAndArg(argB As Double, argX As Double)
' Evaluate log(B)[X] = 1 / log(X)[B].
Console.WriteLine( _
vbCrLf & " Math.Log({1}, {0}) = {2:E16}" + _
vbCrLf & " 1.0 / Math.Log({0}, {1}) = {3:E16}", _
argB, argX, Math.Log(argX, argB), _
1.0 / Math.Log(argB, argX))
' Evaluate log(B)[X] = ln[X] / ln[B].
Console.WriteLine( _
" Math.Log({1}) / Math.Log({0}) = {2:E16}", _
argB, argX, Math.Log(argX) / Math.Log(argB))
' Evaluate log(B)[X] = log(B)[e] * ln[X].
Console.WriteLine( _
"Math.Log(Math.E, {0}) * Math.Log({1}) = {2:E16}", _
argB, argX, Math.Log(Math.E, argB) * Math.Log(argX))
End Sub
End Module 'LogDLogDD
' This example of Math.Log( Double ) and Math.Log( Double, Double )
' generates the following output.
'
' Evaluate these identities with selected values for X and B (base):
' log(B)[X] = 1 / log(X)[B]
' log(B)[X] = ln[X] / ln[B]
' log(B)[X] = log(B)[e] * ln[X]
'
' Math.Log(1.2, 0.1) = -7.9181246047624818E-002
' 1.0 / Math.Log(0.1, 1.2) = -7.9181246047624818E-002
' Math.Log(1.2) / Math.Log(0.1) = -7.9181246047624818E-002
' Math.Log(Math.E, 0.1) * Math.Log(1.2) = -7.9181246047624804E-002
'
' Math.Log(4.9, 1.2) = 8.7166610085093179E+000
' 1.0 / Math.Log(1.2, 4.9) = 8.7166610085093161E+000
' Math.Log(4.9) / Math.Log(1.2) = 8.7166610085093179E+000
' Math.Log(Math.E, 1.2) * Math.Log(4.9) = 8.7166610085093179E+000
'
' Math.Log(9.9, 4.9) = 1.4425396251981288E+000
' 1.0 / Math.Log(4.9, 9.9) = 1.4425396251981288E+000
' Math.Log(9.9) / Math.Log(4.9) = 1.4425396251981288E+000
' Math.Log(Math.E, 4.9) * Math.Log(9.9) = 1.4425396251981288E+000
'
' Math.Log(0.1, 9.9) = -1.0043839404494075E+000
' 1.0 / Math.Log(9.9, 0.1) = -1.0043839404494075E+000
' Math.Log(0.1) / Math.Log(9.9) = -1.0043839404494075E+000
' Math.Log(Math.E, 9.9) * Math.Log(0.1) = -1.0043839404494077E+000
설명
이 메서드는 기본 C 런타임을 호출하며 정확한 결과 또는 유효한 입력 범위는 서로 다른 운영 체제 또는 아키텍처 간에 다를 수 있습니다.
적용 대상
Log(Double)
- Source:
- Math.cs
- Source:
- Math.cs
- Source:
- Math.cs
지정된 숫자의 자연(밑 e
) 로그를 반환합니다.
public:
static double Log(double d);
public static double Log (double d);
static member Log : double -> double
Public Shared Function Log (d As Double) As Double
매개 변수
- d
- Double
로그가 있는 숫자입니다.
반환
다음 표에 나와 있는 값 중 하나입니다.
d 매개 변수 | 반환 값 |
---|---|
양수 |
d 의 자연 로그인 ln d 또는 log e d |
0 | NegativeInfinity |
음수 | NaN |
NaN과 같습니다. | NaN |
PositiveInfinity과 같습니다. | PositiveInfinity |
예제
다음 예제에서는 메서드를 Log 보여 줍니다.
using System;
public class Example
{
public static void Main()
{
Console.WriteLine(" Evaluate this identity with selected values for X:");
Console.WriteLine(" ln(x) = 1 / log[X](B)");
Console.WriteLine();
double[] XArgs = { 1.2, 4.9, 9.9, 0.1 };
foreach (double argX in XArgs)
{
// Find natural log of argX.
Console.WriteLine(" Math.Log({0}) = {1:E16}",
argX, Math.Log(argX));
// Evaluate 1 / log[X](e).
Console.WriteLine(" 1.0 / Math.Log(e, {0}) = {1:E16}",
argX, 1.0 / Math.Log(Math.E, argX));
Console.WriteLine();
}
}
}
// This example displays the following output:
// Evaluate this identity with selected values for X:
// ln(x) = 1 / log[X](B)
//
// Math.Log(1.2) = 1.8232155679395459E-001
// 1.0 / Math.Log(e, 1.2) = 1.8232155679395459E-001
//
// Math.Log(4.9) = 1.5892352051165810E+000
// 1.0 / Math.Log(e, 4.9) = 1.5892352051165810E+000
//
// Math.Log(9.9) = 2.2925347571405443E+000
// 1.0 / Math.Log(e, 9.9) = 2.2925347571405443E+000
//
// Math.Log(0.1) = -2.3025850929940455E+000
// 1.0 / Math.Log(e, 0.1) = -2.3025850929940455E+000
open System
printfn " Evaluate this identity with selected values for X:"
printfn " ln(x) = 1 / log[X](B)\n"
let XArgs = [| 1.2; 4.9; 9.9; 0.1 |]
for argX in XArgs do
// Find natural log of argX.
// The F# log function may be used instead
printfn $" Math.Log({argX}) = {Math.Log argX:E16}"
// Evaluate 1 / log[X](e).
printfn $" 1.0 / Math.Log(e, {argX}) = {1. / Math.Log(Math.E, argX):E16}\n"
// This example displays the following output:
// Evaluate this identity with selected values for X:
// ln(x) = 1 / log[X](B)
//
// Math.Log(1.2) = 1.8232155679395459E-001
// 1.0 / Math.Log(e, 1.2) = 1.8232155679395459E-001
//
// Math.Log(4.9) = 1.5892352051165810E+000
// 1.0 / Math.Log(e, 4.9) = 1.5892352051165810E+000
//
// Math.Log(9.9) = 2.2925347571405443E+000
// 1.0 / Math.Log(e, 9.9) = 2.2925347571405443E+000
//
// Math.Log(0.1) = -2.3025850929940455E+000
// 1.0 / Math.Log(e, 0.1) = -2.3025850929940455E+000
Module Example
Sub Main()
Console.WriteLine( _
" Evaluate this identity with selected values for X:")
Console.WriteLine(" ln(x) = 1 / log[X](B)")
Console.WriteLine()
Dim XArgs() As Double = { 1.2, 4.9, 9.9, 0.1 }
For Each argX As Double In XArgs
' Find natural log of argX.
Console.WriteLine(" Math.Log({0}) = {1:E16}", _
argX, Math.Log(argX))
' Evaluate 1 / log[X](e).
Console.WriteLine(" 1.0 / Math.Log(e, {0}) = {1:E16}", _
argX, 1.0 / Math.Log(Math.E, argX))
Console.WriteLine()
Next
End Sub
End Module
' This example displays the following output:
' Evaluate this identity with selected values for X:
' ln(x) = 1 / log[X](B)
'
' Math.Log(1.2) = 1.8232155679395459E-001
' 1.0 / Math.Log(e, 1.2) = 1.8232155679395459E-001
'
' Math.Log(4.9) = 1.5892352051165810E+000
' 1.0 / Math.Log(e, 4.9) = 1.5892352051165810E+000
'
' Math.Log(9.9) = 2.2925347571405443E+000
' 1.0 / Math.Log(e, 9.9) = 2.2925347571405443E+000
'
' Math.Log(0.1) = -2.3025850929940455E+000
' 1.0 / Math.Log(e, 0.1) = -2.3025850929940455E+000
설명
매개 변수 d
는 기본 10 숫자로 지정됩니다.
이 메서드는 기본 C 런타임을 호출하며 정확한 결과 또는 유효한 입력 범위는 서로 다른 운영 체제 또는 아키텍처 간에 다를 수 있습니다.
이 메서드는 기본 C 런타임을 호출하며 정확한 결과 또는 유효한 입력 범위는 서로 다른 운영 체제 또는 아키텍처 간에 다를 수 있습니다.
추가 정보
적용 대상
.NET