 Open in App
Not now

# Finding Log1p() of the Given Number in Golang

• Last Updated : 01 Apr, 2020

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`

My Personal Notes arrow_drop_up