Trusted answers to developer questions
Trusted Answers to Developer Questions

Related Tags

golang

# What is the Exp function in Golang?

Faraz Karim

Grokking Modern System Design Interview for Engineers & Managers

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

The Go programming language uses the Exp function to find the value of $e$ raised to the power equaling the input $x$. This is the same as $e^x$, where $x$ is the input.

To use this function, you must import the math package in your file and access the Exp function within it using the . notation (math.Exp). Here, Exp is the actual function, while math is the Go package that stores the definition of this function.

## Function definition

The definition of the Exp function inside the math package is:

## Parameters

The Exp function takes a single argument of type float64. This argument represents the number $x$ in the formula $e^x$.

## Return value

The Exp function returns a single value of type float64, which results from raising $e$ to the power $x$ ($x$ being the input float64).

An exception to the above statements is when you pass something that is positive infinity or NAN as an argument:

• +Inf: If the argument has a positive infinite value, the return value will be exactly the same as the argument, i.e., +Inf.

• NAN: If a NAN argument is passed, the return value is also NAN.

## Examples

Following is a simple example where we find out the exponential value of 5:

package mainimport (	"fmt"	"math")func main() {	x := 5.0	y := math.Exp(x)	fmt.Print(x, "'s exponential value is ", y)}

The following example shows how the Exp function handles infinite valued arguments, for which we use the Inf function:

The Inf function returns an infinite value with a sign matching the sign of the argument that it is given.

package mainimport (	"fmt"	"math")func main() {	x := math.Inf(-1)	y := math.Exp(x)	fmt.Print(x, "'s exponential value is ", y)	fmt.Print( "\n")	a := math.Inf(1)	b := math.Exp(a)	fmt.Print(a, "'s exponential value is ", b)}

RELATED TAGS

golang

CONTRIBUTOR

Faraz Karim 