Open In App

Finding Log1p() of the Given Number in Golang

Last Updated : 01 Apr, 2020
Improve
Improve
Like Article
Like
Save
Share
Report

Go language provides inbuilt support for basic constants and mathematical functions to perform operations on the numbers with the help of the math package. You are allowed to find the natural logarithm of 1 plus its specified argument with the help of the Log1p() function provided by the math package. So, you need to add a math package in your program with the help of the import keyword to access the Log1p() function.

Syntax:

func Log1p(a float64) float64
  • It is much more accurate than log(a+1) when the value of a is near zero.
  • If you pass +Inf in this function, then this function will return +Inf.
  • If you pass +0 or -0 in this function, then this function will return +0 or -0.
  • If you pass -1 in this function, then this function will return -Inf.
  • If the value of a < -1, then this function will return NaN.
  • If you pass NaN in this function, then this function will return NaN.

Example 1:




// Golang program to illustrate how to find the
// natural logarithm of plus 1 of the given number
  
package main
  
import (
    "fmt"
    "math"
)
  
// Main function
func main() {
  
    // Finding natural logarithm of
    // plus 1 of the given number
    // Using Logb() function
    res_1 := math.Log1p(0)
    res_2 := math.Log1p(1)
    res_3 := math.Log1p(math.Inf(1))
    res_4 := math.Log1p(math.NaN())
    res_5 := math.Log1p(36)
  
    // Displaying the result
    fmt.Printf("Result 1: %.1f", res_1)
    fmt.Printf("\nResult 2: %.1f", res_2)
    fmt.Printf("\nResult 3: %.1f", res_3)
    fmt.Printf("\nResult 4: %.1f", res_4)
    fmt.Printf("\nResult 5: %.1f", res_5)
  
}


Output:

Result 1: 0.0
Result 2: 0.7
Result 3: +Inf
Result 4: NaN
Result 5: 3.6

Example 2:




// Golang program to illustrate how to find the
// natural logarithm of plus 1 of the given number
  
package main
  
import (
    "fmt"
    "math"
)
  
// Main function
func main() {
  
    // Finding natural logarithm of
    // plus 1 of the given number
    // Using Log1p() function
    nvalue_1 := math.Log1p(100)
    nvalue_2 := math.Log1p(26)
    res := nvalue_1 + nvalue_2
    fmt.Printf("%.5f + %.5f = %.5f"
            nvalue_1, nvalue_2, res)
  
}


Output:

4.61512 + 3.29584 = 7.91096


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads