我正在做 Go 教程,想知道是否有一种更优雅的方法来使用 Newton 的方法来计算平方根:练习:循环和函数,而不是这样:
func Sqrt(x float64) float64 {
count := 0
var old_z, z float64 = 0, 1
for ; math.Abs(z-old_z) > .001; count++ {
old_z, z = z, z - (z*z - x) / 2*z
}
fmt.Printf("Ran %v iterations\n", count)
return z
}
(规范的一部分是提供迭代次数。)这里是完整的程序,包括包语句、导入和主要。
扬帆大鱼
杨魅力
相关分类