因此,我有一小段代码可以根据需要进行迭代,直到所寻求的值之间的差异非常大。我想在代码运行完成后计算并打印迭代次数,最好在我的主函数中(以及打印我需要的所有其他内容)。
编辑:好的,我已经设法做到了。我想知道是否有一种更简单的方法来计算迭代并将它们传递给输出函数。
func sqrt(x float64) (float64, int) {
k := 1
z := 1.0
q := (z*z - x)/(2*z)
for {
if math.Abs(-q) > 0.001 {
z -= q
q = (z*z - x)/(2*z)
k += 1
} else {
break
}
}
return z, k
}
func main() {
k := 1
z := 1.0
z, k = sqrt(9)
fmt.Println("Your sqrt = ", z)
fmt.Println("Math Sqrt = ",math.Sqrt(9))
fmt.Println("Iterations: ", k)
}
元芳怎么了
交互式爱情
相关分类