mark
package main
import (
"fmt"
)
func Sqrt(x float64) float64 {
const E = 0.000001
z :=float64(1)
for z*z - x > E || z*z - x < -E {
z = (z+x/z)/2;
}
return z
}
func main() {
fmt.Println(Sqrt(2))
}
有疑问加站长微信联系(非本文作者))
啥叫牛顿法?
我在看Go指南,里面有一道练习题,我就是写个笔记而已
@channel 牛顿法就是对一个连续函数上取两点做乘法,为负数则可以确定两点间有一个根,然后不断缩小两点间距离,得到一个近似解。