Open In App

MathF.Log() Method in C# with Examples

Last Updated : 04 Apr, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

In C#, MathF.Log() is a MathF class method. It is used to return the logarithm of a specified number. This method can be overloaded by changing the number of the arguments passed. There are total 2 methods in the overload list of the MathF.Log() method as follows:

  • MathF.Log(Single) Method
  • MathF.Log(Single, Single) Method

MathF.Log(Single) Method

This method is used to return the natural (base e) logarithm of a specified number.

Syntax: public static float Log (float x);
Here, x is the specified number whose natural (base e) logarithm to be calculated and its type is System.Single.

Return Value: Returns the natural logarithm of x and its type is System.Single.

Note: Parameter x is always specified as a base 10 number. The return value is depend on the argument passed. Below are some cases:

  • If the argument is positive then method will return the natural logarithm or loge(val).
  • If the argument is zero, then the result is NegativeInfinity.
  • If the argument is Negative(less than zero) or equal to NaN, then the result is NaN.
  • If the argument is PositiveInfinity, then the result is PositiveInfinity.
  • If the argument is NegativeInfinity, then the result is NaN.

Example:




// C# program to demonstrate working
// of MathF.Log(Single) method
using System;
  
class Geeks {
  
    // Main Method
    public static void Main(String[] args)
    {
  
        // Single values whose logarithm
        // to be calculated
        float a = 9.78f;
        float b = 0f;
        float c = -4.56f;
        float nan = Single.NaN;
        float positiveInfinity = Single.PositiveInfinity;
        float negativeInfinity = Single.NegativeInfinity;
  
        // Input is positive number so output
        // will be logarithm of number
        Console.WriteLine(MathF.Log(a));
  
        // positive zero as argument, so output
        // will be -Infinity
        Console.WriteLine(MathF.Log(b));
  
        // Input is negative number so output
        // will be NaN
        Console.WriteLine(MathF.Log(c));
  
        // Input is NaN so output
        // will be NaN
        Console.WriteLine(MathF.Log(nan));
  
        // Input is PositiveInfinity so output
        // will be Infinity
        Console.WriteLine(MathF.Log(positiveInfinity));
  
        // Input is NegativeInfinity so output
        // will be NaN
        Console.WriteLine(MathF.Log(negativeInfinity));
    }
}


Output:

2.280339
-Infinity
NaN
NaN
Infinity
NaN

Math.Log(Single, Single) Method

This method is used to return the logarithm of a specified number in a specified base.

Syntax: public static float Log (float x, float y);

Parameters:
x: It is the specified number whose logarithm to be calculated and its type is System.Single.
y: It is the base of the logarithm of type System.Single.

Return Value: It returns the logarithm of x and its type is System.Single.

Note: The return value is always depend on the argument passed. Below table depicts the different cases:

val base Returned Value
val > 0 (0 < Base < 1) or(Base > 1) logbase(val)
val < 0 any value NaN
any value base < 0 NaN
val != 1 base = 0 NaN
val != 1 base = +ve Infinity NaN
val = NaN any value NaN
any value base = NaN NaN
any value base = 1 NaN
val = 0 (0 < Base < 1) +ve Infinity
val = 0 base > 1 -ve Infinity
val = +ve Infinity (0 < Base < 1) -ve Infinity
val = +ve Infinity base > 1 +ve Infinity
val = 1 base = 0 0
val = 1 base = +ve Infinity 0

Example:




// C# program to demonstrate working
// of MathF.Log(Single, Single) method
using System;
  
class Geeks {
  
    // Main Method
    public static void Main(String[] args)
    {
  
        // Here val = 4.4f and base is 0.4f then
        // output will be logarithm of given value
        Console.WriteLine(MathF.Log(4.4f, 0.4f));
  
        // Here val is 0.5f and base > 1f then output
        // will be -0.5f
        Console.WriteLine(MathF.Log(0.5f, 4f));
  
        // Here val is 0.9f and base = 1f then output
        // will be NaN
        Console.WriteLine(MathF.Log(0.9f, 1f));
  
        // Here val is 0.4f and base is NaN then output
        // will be NaN
        Console.WriteLine(MathF.Log(0.4f, Single.NaN));
    }
}


Output:

-1.616959
-0.5
NaN
NaN


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads