Export (0) Print
Expand All

Math.Log10 Method

Returns the base 10 logarithm of a specified number.

Namespace: System
Assembly: mscorlib (in mscorlib.dll)

public:
static double Log10 (
	double d
)
public static double Log10 (
	double d
)
public static function Log10 (
	d : double
) : double

Parameters

d

A number whose logarithm is to be found.

Return Value

Sign of d

Returns

Positive

The base 10 log of d; that is, log 10d.

Zero

NegativeInfinity

Negative

NaN

If d is equal to NaN, this method returns NaN. If d is equal to PositiveInfinity, this method returns PositiveInfinity.

Parameter d is specified as a base 10 number.

The following example uses Log10 to evaluate certain logarithmic identities for selected values.

// Example for the Math::Log( double, double ) and Math::Log10( 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] == log(10)[X] / log(10)[B].
   Console::WriteLine( "    Math::Log10({1}) / Math::Log10({0}) == {2:E16}", argB, argX, Math::Log10( argX ) / Math::Log10( argB ) );
   
   // Evaluate log(B)[X] == log(B)[10] * log(10)[X].
   Console::WriteLine( "Math::Log(10.0, {0}) * Math::Log10({1}) == {2:E16}", argB, argX, Math::Log( 10.0, argB ) * Math::Log10( argX ) );
}

int main()
{
   Console::WriteLine( "This example of Math::Log( double, double ) "
   "and Math::Log10( 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] == log(10)[X] / log(10)[B]" );
   Console::WriteLine( "   log(B)[X] == log(B)[10] * log(10)[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, double ) and Math::Log10( 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] == log(10)[X] / log(10)[B]
   log(B)[X] == log(B)[10] * log(10)[X]

                    Math::Log(1.2, 0.1) == -7.9181246047624818E-002
              1.0 / Math::Log(0.1, 1.2) == -7.9181246047624818E-002
    Math::Log10(1.2) / Math::Log10(0.1) == -7.9181246047624818E-002
Math::Log(10.0, 0.1) * Math::Log10(1.2) == -7.9181246047624831E-002

                    Math::Log(4.9, 1.2) == 8.7166610085093179E+000
              1.0 / Math::Log(1.2, 4.9) == 8.7166610085093161E+000
    Math::Log10(4.9) / Math::Log10(1.2) == 8.7166610085093179E+000
Math::Log(10.0, 1.2) * Math::Log10(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::Log10(9.9) / Math::Log10(4.9) == 1.4425396251981288E+000
Math::Log(10.0, 4.9) * Math::Log10(9.9) == 1.4425396251981291E+000

                    Math::Log(0.1, 9.9) == -1.0043839404494075E+000
              1.0 / Math::Log(9.9, 0.1) == -1.0043839404494075E+000
    Math::Log10(0.1) / Math::Log10(9.9) == -1.0043839404494077E+000
Math::Log(10.0, 9.9) * Math::Log10(0.1) == -1.0043839404494077E+000
*/

// Example for the Math.Log( double, double ) and Math.Log10( double ) methods.
import System.*;

class LogDDLog10
{
    public static void main(String[] args)
    {
        Console.WriteLine(("This example of Math.Log( double, double ) " 
            + "and Math.Log10( 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] == log(10)[X] / log(10)[B]");
        Console.WriteLine("   log(B)[X] == log(B)[10] * log(10)[X]");
        UseBaseAndArg(0.1, 1.2);
        UseBaseAndArg(1.2, 4.9);
        UseBaseAndArg(4.9, 9.9);
        UseBaseAndArg(9.9, 0.1);
    } //main
     
    // 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}" 
            + "\n             1.0 / Math.Log({0}, {1}) == {3}",
            new Object[]{ System.Convert.ToString(argB), 
            System.Convert.ToString(argX),((System.Double)( 
            System.Math.Log(argX, argB))).ToString("E16"), 
            ((System.Double)(1.0 / System.Math.Log(argB, argX)))
            .ToString("E16")});

        // Evaluate log(B)[X] == log(10)[X] / log(10)[B].
        Console.WriteLine("    Math.Log10({1}) / Math.Log10({0}) == {2}", 
            System.Convert.ToString(argB), 
            System.Convert.ToString(argX), 
            ((System.Double)(System.Math.Log10(argX) / 
            System.Math.Log10(argB))).ToString("E16"));

        // Evaluate log(B)[X] == log(B)[10] * log(10)[X].
        Console.WriteLine("Math.Log(10.0, {0}) * Math.Log10({1}) == {2}", 
            System.Convert.ToString(argB), 
            System.Convert.ToString(argX),
            ((System.Double) (System.Math.Log(10.0, argB)
            * System.Math.Log10(argX))).ToString("E16") );
    } //UseBaseAndArg
} //LogDDLog10

/*
This example of Math.Log( double, double ) and Math.Log10( 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] == log(10)[X] / log(10)[B]
   log(B)[X] == log(B)[10] * log(10)[X]

                   Math.Log(1.2, 0.1) == -7.9181246047624818E-002
             1.0 / Math.Log(0.1, 1.2) == -7.9181246047624818E-002
    Math.Log10(1.2) / Math.Log10(0.1) == -7.9181246047624818E-002
Math.Log(10.0, 0.1) * Math.Log10(1.2) == -7.9181246047624831E-002

                   Math.Log(4.9, 1.2) == 8.7166610085093179E+000
             1.0 / Math.Log(1.2, 4.9) == 8.7166610085093161E+000
    Math.Log10(4.9) / Math.Log10(1.2) == 8.7166610085093179E+000
Math.Log(10.0, 1.2) * Math.Log10(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.Log10(9.9) / Math.Log10(4.9) == 1.4425396251981288E+000
Math.Log(10.0, 4.9) * Math.Log10(9.9) == 1.4425396251981291E+000

                   Math.Log(0.1, 9.9) == -1.0043839404494075E+000
             1.0 / Math.Log(9.9, 0.1) == -1.0043839404494075E+000
    Math.Log10(0.1) / Math.Log10(9.9) == -1.0043839404494077E+000
Math.Log(10.0, 9.9) * Math.Log10(0.1) == -1.0043839404494077E+000
*/

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 2.0, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft