【Golang基础】Go实现牛顿迭代用于计算平方根

    科技2024-06-20  70

    Go实现牛顿迭代用于计算平方根

    牛顿迭代计算平方根的数学原理这里不做解释,给出迭代公式: 要计算 x^2 = a 得到x的值。可以用以下公式进行迭代计算: 下面为Go语言实现版本,作为Golang学习练习。

    package main import ( "fmt" "math" ) func Sqrt(x float64) float64 { lim := 1e-8 #迭代精度 count := 100 #最大迭代次数 now_index := 0 z_old := x #初始化 z_new := x/2 for (now_index < count) && math.Abs(z_new - z_old) > lim{ z_old = z_new z_new = (z_old*z_old + x)/(2*z_old) #迭代公式 now_index = now_index + 1 } return z_new } func main() { fmt.Println(Sqrt(2)) fmt.Println(math.Sqrt(2)) }
    Processed: 0.015, SQL: 8