Golang 找到特定数字的立方根
在数学中,一个数字的立方根是一个值,它当乘以自己两次时得到这个数字。Golang提供了几种方法来计算特定数的立方根。
在本文中,我们将讨论在Golang中计算特定数的立方根的不同方法。
方法1:使用Math.Pow()函数
找到特定数字的立方根的最简单方法是使用math.Pow()函数。我们可以通过将数字提高到1/3的次幂来使用math.Pow()函数计算一个数字的立方根。以下代码演示了这种方法-
示例
package main
import (
"fmt"
"math"
)
func main() {
var n float64 = 27
fmt.Println("Cube root of", n, "is", math.Pow(n, 1.0/3.0))
}
输出
Cube root of 27 is 2.9999999999999996
方法2:使用math.Cbrt()函数
在Golang中,math包还提供了一个内置函数叫做math.Cbrt(),用于计算指定数字的立方根。以下代码演示了如何使用math.Cbrt()函数:
示例
package main
import (
"fmt"
"math"
)
func main() {
var n float64 = 64
fmt.Println("Cube root of", n, "is", math.Cbrt(n))
}
输出
Cube root of 64 is 4
方法3:使用牛顿-拉弗逊方法
牛顿-拉弗逊方法是一种可以用来计算一个数的立方根的迭代方法。牛顿-拉弗逊方法使用以下公式来计算一个数的立方根 −
x = (2*x + n/(x*x))/3
其中x是数n的立方根的近似值。
以下代码演示了如何使用牛顿-拉弗森方法来计算指定数的立方根 –
示例
package main
import (
"fmt"
)
func cubeRoot(n float64) float64 {
var x float64 = n / 3.0
for i := 0; i < 10; i++ {
x = (2*x + n/(x*x))/3
}
return x
}
func main() {
var n float64 = 125
fmt.Println("Cube root of", n, "is", cubeRoot(n))
}
输出
Cube root of 125 is 5
结论
在本文中,我们讨论了在Golang中计算指定数字的立方根的不同方法。我们可以使用math.Pow()函数,math.Cbrt()函数或牛顿-拉夫森方法来找到一个数的立方根。对于程序的具体需求,选择哪种方法取决于。